Continuando con mi aventura... separe el SQL en tres. Borrado de tablas, creacion de tablas e insert de datos, a seleccionar segun lo que tuviera en un combobox. En el memo mem_Queries guardo los queries a realizar. Con las primeras dos (drops y creates) no hubo problema, el asunto ha sido con los insert.
Código:
procedure Tfrm_inicializador.bbtn_EjecutarClick(Sender: TObject);
var
i: integer;
str_query: string;
begin
// Corro 1x1 para verificar si hay accion que tomar
for i:= 0 to mem_Queries.Lines.Count - 1 do
begin
str_query:= Trim(mem_Queries.Lines.Strings[i]);
ibt_IBTransaction.StartTransaction;
if (Length(str_query) > 5) then
begin
ibq_IBQuery.SQL.Text:= str_query;
ibq_IBQuery.ExecSQL;
end;
ibt_IBTransaction.Commit;
end;
end;
1) Prob 1. Si declaré un campo de las tablas como NOT NULL PRIMARY KEY, al querer realizar el insert me marca que intento duplicar una llave (esta vacia la tabla).
2) Prob 2. Si no declaro llave alguna y cree ese campo ID como un campo normal, al querer hacer el insert obtengo SQL Parse error: EOF in string detected.
Lo curioso es que si ejecuto las mismas instrucciones mediante la herramienta isql de firebird, no obtengo error, por ende, no lo considero error de sintaxis.
ideas?