Array
(
)

Dúvida sobre declaração de variaveis

Wfmzipi
   - 17 jun 2005

Pessoal estou com segeuinte duvida: tenho uma trigger que eu declarei da seguinte forma :

CREATE TRIGGER ´UNI´.´TG_INSERIR_TER´ ON ´UNI´.´ELO_CONTRATOS´
FOR
INSERT, UPDATE,DELETE
AS
DECLARE
@v_NumSequ INT
@xStaLot INT
@xDesInt VARCHAR(40)
@xDesRef VARCHAR(40)= ´Rotina de terceiros´
@xContLin INT(9)
@xConInt VARCHAR(250)
/* Variaveis para os campos da tabela pessoas_fisicas */
@v_NOME VARCHAR(40)
@v_NOMEREDUZ VARCHAR(15)
@v_CPF INT(11)
@v_SEXO VARCHAR(1)
@v_DTNASC DATE
@v_PFIS_NUMERO INT
@v_NACCOD INT
BEGIN

Gostaria de saber se ela está de acordo ??

Marcus.magalhaes
   - 21 jun 2005

Boa tarde.

Não, sua trigger irá falhar pois faltam virgular entre as variáveis, do jeito q está o Declare só terá efeito sobre a 1a. variável.

Outro ponto é: UNI é o nome da base de dados ou do dono, do jeito q está é do dono.

Porém vc não necessita colocar entre aspas (´´). Veja como segue:

CREATE TRIGGER UNI.TG_INSERIR_TER ON UNI.ELO_CONTRATOS
FOR
INSERT, UPDATE,DELETE
AS
DECLARE
@v_NumSequ INT ,
@xStaLot INT ,
@xDesInt VARCHAR(40) ,
@xDesRef VARCHAR(40),
@xContLin INT(9) ,
@xConInt VARCHAR(250) ,
/* Variaveis para os campos da tabela pessoas_fisicas */
@v_NOME VARCHAR(40) ,
@v_NOMEREDUZ VARCHAR(15) ,
@v_CPF INT(11) ,
@v_SEXO VARCHAR(1) ,
@v_DTNASC DATE ,
@v_PFIS_NUMERO INT ,
@v_NACCOD INT
BEGIN
Set @xDesRef = ´Rotina de terceiros´

Espero ter ajudado.

Att,