Firedac insersao
Alguem saberia me explicar o por que desse erro no firedac.
Trabalhava com o zeos a fazia assim e funcionava agora migrei pro faridac e isso nao funciona no firedac
ou sera que tem alguma propriedade pra mim configura pra ter esta opcao
with Query1 do //Componente query do ZeosLib
begin
Close;
SQL.Clear;
SQL.Add('INSERT INTO pri_tipo_pessoa(tippes_cod,tippes_nome)VALUES (1,''CLIENTE''); '+
'INSERT INTO pri_tipo_pessoa(tippes_cod,tippes_nome)VALUES (2,''FORNECEDOR''); '+
'INSERT INTO pri_tipo_pessoa(tippes_cod,tippes_nome)VALUES (3,''TRANSPORTADORA''); '+
'INSERT INTO pri_tipo_pessoa(tippes_cod,tippes_nome)VALUES (4,''VENDEDOR''); '+
'INSERT INTO pri_tipo_pessoa(tippes_cod,tippes_nome)VALUES (5,''PRODUTOR RURAL''); '+
'INSERT INTO pri_tipo_pessoa(tippes_cod,tippes_nome)VALUES (6,''MECÂNICO''); '+
'INSERT INTO pri_tipo_pessoa(tippes_cod,tippes_nome)VALUES (7,''FUNCIONARIO''); ');
ExecSQL;
end;
Mesmo sql porem no firadac nao funciona
with ADQuery1 do //Componente quaery do firedac
begin
Close;
SQL.Clear;
SQL.Add('INSERT INTO pri_tipo_pessoa(tippes_cod,tippes_nome)VALUES (1,''CLIENTE''); '+
'INSERT INTO pri_tipo_pessoa(tippes_cod,tippes_nome)VALUES (2,''FORNECEDOR''); '+
'INSERT INTO pri_tipo_pessoa(tippes_cod,tippes_nome)VALUES (3,''TRANSPORTADORA''); '+
'INSERT INTO pri_tipo_pessoa(tippes_cod,tippes_nome)VALUES (4,''VENDEDOR''); '+
'INSERT INTO pri_tipo_pessoa(tippes_cod,tippes_nome)VALUES (5,''PRODUTOR RURAL''); '+
'INSERT INTO pri_tipo_pessoa(tippes_cod,tippes_nome)VALUES (6,''MECÂNICO''); '+
'INSERT INTO pri_tipo_pessoa(tippes_cod,tippes_nome)VALUES (7,''FUNCIONARIO''); ');
ExecSQL;
end;
Se alguem encontrou uma solucao favor me ajudar
o erro que aparece é o seguinte:
"Nao pode inserir multiplos comandos no caomando preparado".
Trabalhava com o zeos a fazia assim e funcionava agora migrei pro faridac e isso nao funciona no firedac
ou sera que tem alguma propriedade pra mim configura pra ter esta opcao
with Query1 do //Componente query do ZeosLib
begin
Close;
SQL.Clear;
SQL.Add('INSERT INTO pri_tipo_pessoa(tippes_cod,tippes_nome)VALUES (1,''CLIENTE''); '+
'INSERT INTO pri_tipo_pessoa(tippes_cod,tippes_nome)VALUES (2,''FORNECEDOR''); '+
'INSERT INTO pri_tipo_pessoa(tippes_cod,tippes_nome)VALUES (3,''TRANSPORTADORA''); '+
'INSERT INTO pri_tipo_pessoa(tippes_cod,tippes_nome)VALUES (4,''VENDEDOR''); '+
'INSERT INTO pri_tipo_pessoa(tippes_cod,tippes_nome)VALUES (5,''PRODUTOR RURAL''); '+
'INSERT INTO pri_tipo_pessoa(tippes_cod,tippes_nome)VALUES (6,''MECÂNICO''); '+
'INSERT INTO pri_tipo_pessoa(tippes_cod,tippes_nome)VALUES (7,''FUNCIONARIO''); ');
ExecSQL;
end;
Mesmo sql porem no firadac nao funciona
with ADQuery1 do //Componente quaery do firedac
begin
Close;
SQL.Clear;
SQL.Add('INSERT INTO pri_tipo_pessoa(tippes_cod,tippes_nome)VALUES (1,''CLIENTE''); '+
'INSERT INTO pri_tipo_pessoa(tippes_cod,tippes_nome)VALUES (2,''FORNECEDOR''); '+
'INSERT INTO pri_tipo_pessoa(tippes_cod,tippes_nome)VALUES (3,''TRANSPORTADORA''); '+
'INSERT INTO pri_tipo_pessoa(tippes_cod,tippes_nome)VALUES (4,''VENDEDOR''); '+
'INSERT INTO pri_tipo_pessoa(tippes_cod,tippes_nome)VALUES (5,''PRODUTOR RURAL''); '+
'INSERT INTO pri_tipo_pessoa(tippes_cod,tippes_nome)VALUES (6,''MECÂNICO''); '+
'INSERT INTO pri_tipo_pessoa(tippes_cod,tippes_nome)VALUES (7,''FUNCIONARIO''); ');
ExecSQL;
end;
Se alguem encontrou uma solucao favor me ajudar
o erro que aparece é o seguinte:
"Nao pode inserir multiplos comandos no caomando preparado".
Volmir Santos
Curtidas 1
Respostas
Deivison Melo
02/08/2013
Não é que seja erro, o delphi não permite a inserção dessa forma...
Porque não utiliza um loop para inserir as informações desejadas?
Porque não utiliza um loop para inserir as informações desejadas?
GOSTEI 0
Luiz Junior
02/08/2013
Volmir, você poderia tentar assim também...
Eu acredito que fique até mais rápido, pois o Mysql vai executar apenas um insert.
INSERT INTO tabela (Codigo, Nome) VALUES(1,'teste1'), (2,'teste2'),(3,'teste3');
Eu acredito que fique até mais rápido, pois o Mysql vai executar apenas um insert.
GOSTEI 0
Josenilson Silva
02/08/2013
Utilie o FDScript
GOSTEI 0
Josenilson Silva
02/08/2013
Digo: Troque o componente FDQuery pelo FDScript e continue o mesmo procedimento anterior. Vai funcionar.
GOSTEI 0