Array
(
)

ADOQuery1: Missing SQL property

Paulo
   - 30 out 2009

Boa tarde... Pessoal estou começando a estudar trabalhar com Delphi... Necessito realizar um simples cadastro de Clientes utilizando SQL Server 2005, ADOConnection e ADOQuery. Ao clicar no botão para realizar o insert no banco aparece a seguinte mensagem: ADOQuery1: Missing SQL property Acredito que o erro está no comando SQL. Abaixo o código do botão. #Códigoprocedure TfrmInserirClientes.BitBtn7Click(Sender: TObject); begin ADOQuery1.SQL.Clear; ADOQuery1.SQL.Add('Insert into clientes' +'(cliente_codigo, cliente_razao, cliente_nome, cliente_contato,' + ' cliente_endereco, cliente_numero, cliente_complemento,' + ' cliente_bairro, cliente_cidade, cliente_uf, cliente_cep,' + ' cliente_caixapostal, cliente_telefone, cliente_telefone2,' + ' cliente_fax, cliente_email, cliente_cpj, cliente_cpf,cliente_rg,' + ' cliente_insc, cliente_pessoa, cliente_comentario)' +'values(' +Edit1.Text //codigo +', ' +QuotedStr(Edit2.Text)//razão +', ' +QuotedStr(Edit3.Text)//nome +', ' +QuotedStr(Edit4.Text)//contato +', ' +QuotedStr(Edit5.Text)//endereco +', ' +Edit6.Text //numero +', ' +QuotedStr(Edit7.Text)//complemento +', ' +QuotedStr(Edit8.Text) //bairro +', ' +QuotedStr(Edit9.Text) //cidade +', ' +QuotedStr(ComboBox1.Text)//uf +', ' +QuotedStr(Edit10.Text) //cep +', ' +Edit11.Text //caixapostal +', ' +QuotedStr(Edit12.Text) //telefone +', ' +QuotedStr(Edit13.Text) //telefone2 +', ' +QuotedStr(Edit14.Text) //fax +', ' +QuotedStr(Edit15.Text) //email +', ' +QuotedStr(Edit16.Text) //cnpj +', ' +QuotedStr(Edit17.Text) //cpf +', ' +Edit19.Text // rg +', ' +QuotedStr(Edit18.Text) //inscricao +', ' +QuotedStr(t) //pessoa +', ' +QuotedStr(Memo1.Text)//comentario +')' ); ADOQuery1.ExecSQL; end; Se alguem puder me ajudar agradeço desde já... Obrigado.

Pjrm1470
   - 30 out 2009

Não é comun usar o TADOQuery para executar INSERT, UPDATE e DELETE comandos.
Troque para o TADOCommand.

1.Coloque o seu SQL na propriedade CommandText.
2.Utilize a procedure Execute para executar o comando.

| TADOCommand.CommandText := 'Seu INSERT';
| TADOCommand.Execute;

Minha opnião: Se o programa não irá trocar o SQL dentro da query, deixe o SQL já escrito dentro da propriedade.

0
|
0

Martins
   - 30 out 2009

Antes de: ADOQuery1.SQL.Clear; vc colocou ADOQuery1.Close? Não vi no código postado aqui.

Boa Sorte e bons códigos.

0
|
0