Query x TIBSQL

Delphi

08/08/2013

Bom Dia Delphianos

Ao rodar o script abaixo no IBExpert, eu funciona corretamente

ALTER PROCEDURE RECOMPUTE_INDEX AS
declare variable indice_nome varchar(31);
declare variable vsSQL varchar(100);
declare variable tabela_nome varchar(40);

begin
for select rdb$index_name, rdb$relation_name
from rdb$indices
where rdb$system_flag = 0
into :indice_nome, :tabela_nome
do
begin

vsSQL = 'SET STATISTICS INDEX ';
vsSQL = vsSQL || :INDICE_NOME || ';';
EXECUTE STATEMENT :vsSQL;
-- insert into atualizacoes (index_name, relation_name)
-- values (:indice_nome,:tabela_nome);
end
suspend;
end

Mas ao rodar pelo Delphi me aparece a seguinte mensagem no exception on begin

Dynamic SQL Error
SQL error code = -104
Token unknown - line 11, column 7
?

Alguem tem alguma dica no que estou errando?

Agradeço a atenção
Alessandro Yamasaki

Alessandro Yamasaki

Curtidas 0

Respostas

Alessandro Yamasaki

Alessandro Yamasaki

08/08/2013

Outro exemplo que me dá erro identico


Tenho o SQL abaixo que funciona normalmente pelo IBExpert e SQLEditor

ALTER PROCEDURE CRIARGUID RETURNS(GUID CHAR(22))
AS
declare variable vguid char(22);
begin
select
substring(replace(uuid_to_char(gen_uuid()), '-', '') FROM 1 FOR 22)
from
rdb$database into :vGuid;

GUID = :vGuid;

suspend;
end

Mas pelo Delphi, através do IBSQL, me dá o seguinte erro

Project XXX.exe raised exception class EIBInterBaseError with message 'Dynamic SQL Error
SQL error code = -104
Token unknown - line 9, column 23?'.

A linha 9 é GUID = :vGuid;

Mas não entendi aonde está a falha. Alguma dica colegas?

Att
GOSTEI 0
Alessandro Yamasaki

Alessandro Yamasaki

08/08/2013

Colegas, achei a solução e compartilhar a solução. Mudei para False a propriedade Paramscheck do componente.

[]´s
GOSTEI 0
Wesley Yamazack

Wesley Yamazack

08/08/2013

PUtz, li seu tópico, quando ia responder tua duvida vi que tu postou a solução, rsrsrs.. vlw por compartilhar com a galera.

abs
GOSTEI 0
POSTAR