Como fazer um UPDATE dentro do SELECT

3 respostas
A

Olá pessoal,

Não estou conseguinte fazer um UPDATE dentro do SELECT abaixo:

sql = ("SELECT codigo,valor,valor*1 " +
                    "AS total FROM produto WHERE " +
                    "codigo=" + Integer.toString(codigo)+" ");

Estou desenvolvendo um Web Service com JDBC e não sei como eu posso colocar o código do produto comprado na tabela compra. Se elguém souber por favor da uma ajuda!

vlws

3 Respostas

G

Não entendi, você está tentando fazer as 2 operações?

A

UPDATE dentro do SELECT??

Não sei se é a mesma coisa ou algo parecido, mais já vi algo sobre SELECT INTO …

xD~~

A

Olá, Gustavokt e altitdb na verdade eu com os meus POGs consegui resolver já.

É que eu tinha que fazer o select que mencionei e ainda colocar o ID da tabela PRODUTO na tabela COMPRA.
Então eu fiz o seguinte:

Fiz uma sequência da tabela COMPRA: CREATE SEQUENCE SEQ_COMPRA START 1; e dentro da tabela Compra eu declarei a sequência:

CREATE TABLE Compra( codcompra INTEGER PRIMARY KEY NOT NULL DEFAULT NEXTVAL('SEQ_COMPRA'), codigo INTEGER );

Tudo isso no banco de dados mesmo.
No JAVA eu fiz assim:

sql = ("SELECT codigo,valor,valor*1 "
                    + "AS total FROM produto WHERE "
                    + "codigo="
                    + " " + Integer.toString(codigo));

            sql2 = ("INSERT INTO compra (codigo)VALUES(" + codigo + ")");
 

            stmt.executeUpdate(sql2);
            rs = stmt.executeQuery(sql);

Era só. Mas isso não é uma boa prática, mas por enquanto está ótimo.

vlws pela atenção!

Criado 10 de dezembro de 2010
Ultima resposta 11 de dez. de 2010
Respostas 3
Participantes 3