O problema é que vc está usando *, defina a coluna que vc deseja pegar o resultado, depois jogue o resultado do select numa variável e colque-a na instrução.
Tipo:
variável criada = select * from docsChesf where codigo=‘IOL01’
INSERT INTO docsChesf values (‘1’,‘25/11/2008’,variável criada)
T
thingol
SELECT * é uma coisa que se usa normalmente apenas quando você vai fazer uma consulta direta no banco via SQL*Plus. Em programas, nunca use SELECT * para evitar os seguintes problemas:
a) Seu programa parar de funcionar porque alguém mudou a tabela e incluiu ou excluiu campos, e você nem tem idéia de que campos estão faltando;
b) Seu programa funcionar mais devagar, porque está solicitando mais dados que o necessário.
joede.fadel
faça assim
select campo from docsChesf where codigo='IOL01' do jeito que vc fez ele não vai funcionar porque a SQL está retornando todos campos da tabela
R
raffccc
mas eu quero q ele retorne todos os campos…
Pq o q estou fazendo eh um trigger… quando eu deleto de uma tabela eu movo os dados para uma base histórica, então as tabelas são idênticas tirando o id e a data de obsolescencia do documento que é da tabela histórica…
Não entendi o lance da variável… vc diz uma variável em java?
mduques
o seu select tem que retornar apenas um valor…
vc pode concatenar os dados em um so
isso se sua tabela docsChesf tiver apenas 3 campos ID, DATA e DADOS
INSERT INTO docsChesf values ('1','25/11/2008',select chave ||','|| nome||','||endereco from cliente)
R
raffccc
Valeu cara… resolveu meu prob… to pegando um por vez agora… tah mto grande mas ta valendo…