Criação de Stored Procedure
Estou precisando pela primeira vez criar uma Stored Procedure, só que acontece um erro e eu não consigo achar onde é.
Essa Procedure vai subtrair da tabela passada por parâmetro a quantidade que também vai ser passada por parâmetro. Pretendia passar a tabela por parâmetro porque o programa permite queo usuário crie quantos estoque ele quiser, logo na hora de executar a procedure eu passaria na tabela de qual estoque ele deve fazer as alterações.
Ps.: É possível passar a tabela na qual eu farei o select e o update por parâmetro? De qualquer maneira mesmo sem passar a tabela por parâmetro dá o mesmo erro:
bye!
SET TERM ^; CREATE PROCEDURE SP_SUBTRAIPRODUTO(TABELA VARCHAR(12), PRODUTO VARCHAR(15),NQUANT FLOAT) RETURNS(NEWQUANT FLOAT) AS DECLARE VARIABLE ATUAL FLOAT; BEGIN SELECT QUANTIDADE FROM :TABELA WHERE CODPRODUTO=:PRODUTO INTO :ATUAL; :NEWQUANT = :ATUAL-:NQUANT; UPDATE :TABELA SET QUANTIDADE=:NEWQUANT WHERE CODPRODUTO=:PRODUTO; COMMIT; END^
Essa Procedure vai subtrair da tabela passada por parâmetro a quantidade que também vai ser passada por parâmetro. Pretendia passar a tabela por parâmetro porque o programa permite queo usuário crie quantos estoque ele quiser, logo na hora de executar a procedure eu passaria na tabela de qual estoque ele deve fazer as alterações.
Ps.: É possível passar a tabela na qual eu farei o select e o update por parâmetro? De qualquer maneira mesmo sem passar a tabela por parâmetro dá o mesmo erro:
ISC ERROR CODE:335544569 ISC ERROR MESSAGE: Dynamic SQL Error SQL error code = -104 Token unknown - line 5, char 27 :
bye!
Delphi32
Curtidas 0