Fórum Erro na Stored Procedure #54624

08/01/2006

0

Sera que alguem porderia me ajudar aonde estou errando errando na criação dessa SP



CREATE PROCEDURE UPD_INS_CLIENTES (

ID INTEGER,
NOME VARCHAR(50),
NASCIMENTO DATE,
SEXO CHAR(1))
AS
BEGIN
IF (EXISTS(SELECT ID FROM CLIENTES WHERE (ID = :ID))) THEN
UPDATE CLIENTES
SET NOME = :NOME,
NASCIMENTO = :NASCIMENTO,
SEXO = :SEXO
WHERE (ID = :ID);
ELSE
INSERT INTO CLIENTES (
ID,
NOME,
NASCIMENTO,
SEXO)
VALUES (
:ID,
:NOME,
:NASCIMENTO,
:SEXO);
End


Tdqr

Tdqr

Responder

Posts

09/01/2006

Thomaz_prg

Tente assim:

SET TERM ^ ;
CREATE PROCEDURE UPD_INS_CLIENTES ( 
ID INTEGER, 
NOME VARCHAR(50), 
NASCIMENTO DATE, 
SEXO CHAR(1)) 
AS 
DECLARE VARIABLE QTD INTEGER;
BEGIN 
SELECT COUNT(*) FROM CLIENTES WHERE ID = :ID INTO :QTD;
IF (QTD > 0) THEN 
UPDATE CLIENTES 
SET NOME = :NOME, 
NASCIMENTO = :NASCIMENTO, 
SEXO = :SEXO 
WHERE (ID = :ID); 
ELSE 
INSERT INTO CLIENTES ( 
ID, 
NOME, 
NASCIMENTO, 
SEXO) 
VALUES ( 
:ID, 
:NOME, 
:NASCIMENTO, 
:SEXO); 
End ^
SET TERM ^ ; 



Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar