lucasc Membro Junior
Registrado: Quinta-Feira, 10 de Mai de 2007 Mensagens: 305
|
Enviada: Qua Nov 24, 2021 4:25 pm Assunto: Execute Statement |
|
|
Prezados,
Tenho uma tabela de horários onde registro todas as faixas das 00 às 23, exemplo:
FH00 INT,
FH01 INT,
FH02 INT...
Tenho uma procedure no banco que tem como parâmetro o nome da faixa, e preciso setar no banco um valor:
Código: |
CREATE OR ALTER PROCEDURE POPE_FROTA_CUMP3 (
PIDLOTE INTEGER,
PIDEMP INTEGER,
PIDFILIAL INTEGER,
PIDLINHA INTEGER,
PIDVEICULO INTEGER,
PDATA DATE,
PFAIXA CHAR(4))
AS
BEGIN
EXECUTE STATEMENT
'UPDATE OPE_FROTA_CUMP SET '||:PFAIXA||' = 1'||
'WHERE IDLOTE = '||:PIDLOTE||
'AND IDEMP = '||:PIDEMP||
'AND IDFILIAL = '||:PIDFILIAL||
'AND IDLINHA = '||:PIDLINHA||
'AND IDVEICULO = '||:PIDVEICULO||
'AND DATA = '||:PDATA;
END;
|
Quando executo a procedure, ocorre o seguinte erro:Only one operand can be of type TIMESTAMP
O problema está na coluna data, se eu removo da procedure, persiste sem erro.
Firebird 3.0
Agradeço pela atenção. |
|