Fórum ADOConnection e ADOQuery #178873
01/09/2003
0
Fala ai pessoal, blz..?!
Galera, já programei em Delphi mas isso faz mtooo tempo e como depois fui Para o VB nunca mais mexi em Delphi.... por isso eu estou precisando de uma ajuda nos componentes ADOConnection e ADOQuery.
Alguém poderia me ajudar na parte de Alteração, Exclusão, Inserção e Consulta utilizando esses componentes...?!
Desde já agradeço pela atenção....
Galera, já programei em Delphi mas isso faz mtooo tempo e como depois fui Para o VB nunca mais mexi em Delphi.... por isso eu estou precisando de uma ajuda nos componentes ADOConnection e ADOQuery.
Alguém poderia me ajudar na parte de Alteração, Exclusão, Inserção e Consulta utilizando esses componentes...?!
Desde já agradeço pela atenção....
Brenerfa
Curtir tópico
+ 0
Responder
Post mais votado
01/09/2003
Pessoal está dando um erro de Violação de memória... Olhem o Código
[/code]
procedure TForm1.btnLogarClick(Sender: TObject); begin if btnLogar.Enabled = true then begin try oCn.Connected := True; with qryQuery do begin Connection := oCn; Active := True; Close; SQL.Clear; SQL.Add(´SELECT * FROM TblFunc WHERE ´); SQL.Add(´Login = "´+ edtLogin.Text +´" and Senha = "´+ edtSenha.Text +´"´); Open; if not Eof then Begin ShowMessage(FieldByName(´CodFunc´).Value); end else Begin ShowMessage(´Registro não encontrado´); edtLogin.Clear; edtSenha.Clear; end; Active := false; Free; end; oCn.Connected := false; oCn.Free; Except ShowMessage(´Com Erro´); end; end; end;
Brenerfa
Responder
Gostei + 1
Mais Posts
01/09/2003
Wbb
Bom, é bem logo, mas vamos ver se consigo te audar. Siga os passos abaixo:
1- Vá à guia de controles, ADO;
2- Adicione o controle ADOConnection;
3- Acesse a propriedade ConnectionString no Object Inspector, clique no botão ´...´ (à direita) desta propriedade e, na janela apresentada, clique no botão ´Build...´. Será apresentada uma segunda janela: ´Data Link Properties´. Nesta janela, acesse a guia ´Provider´. É apresentada uma lista de tipos de bancos de dados aos quais você pode se conectar através das ferramentas ADO. Selecione ´Microsoft Jet 4.0 OLE DB Provider´, que se refere ao banco de dados do Access. Em seguida clique no botão ´Next´, que o direcionará para a guia ´Connection´. No campo 1 da guia ´Connection´, indique onde esta o arquivo de banco de dados do Access que você deseja acessar. Após, apenas clique no botão ´Test Connection´ para verificar se está tudo OK. Se estiver tudo certo, ou seja, se não retornar uma mensagem de erro após o teste, clique no botão OK da janela ´Data Link Properties´. Clique no botão OK também da primeira janela apresentada no início da configuração da propriedade ConnectionString;
4- Adicione um controle ADOQuery;
5-Na propriedade ´Connection´, do Object Inspector, selecione ADOConnection1;
6- Acesse a propriedade SQL do ADOQuery, e insira a seguinte linha (por ex.):
Select * from NomeDaTabela
Onde: NomeDaTabela, é o nome da tabela contida em seu banco de dados.
Essa propriedade deve ser preenchida apenas para que o programa funcione, pois na realidade, você terá que manipular a propriedade SQL através de código, sempre que for necessário fazer uma consulta, uma edição de campos, etc.
Pronto! Agora você está apto a começar sua programação e acesso ao banco de dados.
Para exemplo de utilização da ferramenta, abra uma nova aplicação no Delphi e insira um TButton e um ListBox. Acesse o evento OnClick do TButton e escreva o seguinte código:
procedure TForm2.Button1Click(Sender: TObject);
begin
//Localizar registros num banco de dados qualquer
ADOConnection1.Connected := true;
ADOQuery1.Active := true;
AdoQuery1.close;
AdoQuery1.SQL.Clear;
AdoQuery1.sql.Add(´Select NomeDoCampo from NomeDaTabela´);
AdoQuery1.open;
while (not AdoQuery1.Eof) do
begin
Listbox1.Items.add(AdoQuery1.FieldValues[´NomeDoCampo´]);
AdoQuery1.Next;
end;
ADOQuery1.Active := false;
ADOConnection1.Connected := false;
ADOQuery1.Free;
ADOConnection1.Free;
end;
Sobre o código, grosso modo, ele faz com que sejam conectados seu programa com o banco de dados, pesquisa e localiza todas as ocorrências em todos os registros apenas para o campo ´NomeDoCampo´, dentro da tabela ´NomeDaTabela´, e adiciona-os no ListBox. Em seguida desfaz a conexão. Assim, adicionando-se mais parâmetros ao filtro SQL, você poderá refinar sua busca.
Para adicionar um registro, insira outro TButton e acesse seu evento OnClick. Neste evento, escreva:
procedure TForm2.Button2Click(Sender: TObject);
begin
// Adição de novo registro ao banco de dados.
ADOConnection1.Connected := true;
ADOQuery1.Active := true;
ADOQuery1.Append;
ADOQuery1.FieldValues[´NomeDoCampo1´]:= 9991; // Campo NomeDoCampo1 é numérico
ADOQuery1.FieldValues[´NomeDoCampo2´]:= ´BLABLABLA´; // Campo NomeDoCampo2 é string
ADOQuery1.FieldValues[´NomeDoCampo3´]:= ´01/01/01´; // Campo NomeDoCampo3 é data
ADOQuery1.Post;
ADOQuery1.Active := false;
ADOConnection1.Connected := false;
end;
Nesse código, tudo se passa mais ou menos como no código anterior. Não é necessário que você forneça conteúdo a cada um dos campos de seu banco de dados. Forneça todos apenas se lhe for necessário, senão forneça apenas os que lhe interessa e os demais campos da tabela, neste novo registro que está sendo adicionado, serão considerados nulos.
Para editar um registro, insira um terceiro botão no seu form. No evento OnClick, escreva:
procedure TForm2.Button3Click(Sender: TObject);
begin
// Edição de registros do banco de dados
ADOConnection1.Connected := true;
ADOQuery1.Active := true;
AdoQuery1.close;
AdoQuery1.SQL.Clear;
AdoQuery1.sql.Add(´Select NomeDoCampo1, NomeDoCampo2 from NomeDaTabela Where NomeDoCampo1 = 989899´); //NomeDoCampo1 é um campo do tipo numérico
AdoQuery1.open;
ADOQuery1.Edit;
ADOQuery1.FieldValues[´NomeDoCampo2´]:= ´tESTEtESTEtESTE´; // NomeDoCampo2 é um campo do tipo string
ADOQuery1.Post;
ADOQuery1.Active := false;
ADOConnection1.Connected := false;
ADOQuery1.Free;
ADOConnection1.Free;
end;
E é isso aí.
Acredito que este seja o básico e essencial para manipulação de bancos de dados com as ferramentas ADO. Elas servem para manipular vários tipos de bancos de dados.
Espero que resolva.
1- Vá à guia de controles, ADO;
2- Adicione o controle ADOConnection;
3- Acesse a propriedade ConnectionString no Object Inspector, clique no botão ´...´ (à direita) desta propriedade e, na janela apresentada, clique no botão ´Build...´. Será apresentada uma segunda janela: ´Data Link Properties´. Nesta janela, acesse a guia ´Provider´. É apresentada uma lista de tipos de bancos de dados aos quais você pode se conectar através das ferramentas ADO. Selecione ´Microsoft Jet 4.0 OLE DB Provider´, que se refere ao banco de dados do Access. Em seguida clique no botão ´Next´, que o direcionará para a guia ´Connection´. No campo 1 da guia ´Connection´, indique onde esta o arquivo de banco de dados do Access que você deseja acessar. Após, apenas clique no botão ´Test Connection´ para verificar se está tudo OK. Se estiver tudo certo, ou seja, se não retornar uma mensagem de erro após o teste, clique no botão OK da janela ´Data Link Properties´. Clique no botão OK também da primeira janela apresentada no início da configuração da propriedade ConnectionString;
4- Adicione um controle ADOQuery;
5-Na propriedade ´Connection´, do Object Inspector, selecione ADOConnection1;
6- Acesse a propriedade SQL do ADOQuery, e insira a seguinte linha (por ex.):
Select * from NomeDaTabela
Onde: NomeDaTabela, é o nome da tabela contida em seu banco de dados.
Essa propriedade deve ser preenchida apenas para que o programa funcione, pois na realidade, você terá que manipular a propriedade SQL através de código, sempre que for necessário fazer uma consulta, uma edição de campos, etc.
Pronto! Agora você está apto a começar sua programação e acesso ao banco de dados.
Para exemplo de utilização da ferramenta, abra uma nova aplicação no Delphi e insira um TButton e um ListBox. Acesse o evento OnClick do TButton e escreva o seguinte código:
procedure TForm2.Button1Click(Sender: TObject);
begin
//Localizar registros num banco de dados qualquer
ADOConnection1.Connected := true;
ADOQuery1.Active := true;
AdoQuery1.close;
AdoQuery1.SQL.Clear;
AdoQuery1.sql.Add(´Select NomeDoCampo from NomeDaTabela´);
AdoQuery1.open;
while (not AdoQuery1.Eof) do
begin
Listbox1.Items.add(AdoQuery1.FieldValues[´NomeDoCampo´]);
AdoQuery1.Next;
end;
ADOQuery1.Active := false;
ADOConnection1.Connected := false;
ADOQuery1.Free;
ADOConnection1.Free;
end;
Sobre o código, grosso modo, ele faz com que sejam conectados seu programa com o banco de dados, pesquisa e localiza todas as ocorrências em todos os registros apenas para o campo ´NomeDoCampo´, dentro da tabela ´NomeDaTabela´, e adiciona-os no ListBox. Em seguida desfaz a conexão. Assim, adicionando-se mais parâmetros ao filtro SQL, você poderá refinar sua busca.
Para adicionar um registro, insira outro TButton e acesse seu evento OnClick. Neste evento, escreva:
procedure TForm2.Button2Click(Sender: TObject);
begin
// Adição de novo registro ao banco de dados.
ADOConnection1.Connected := true;
ADOQuery1.Active := true;
ADOQuery1.Append;
ADOQuery1.FieldValues[´NomeDoCampo1´]:= 9991; // Campo NomeDoCampo1 é numérico
ADOQuery1.FieldValues[´NomeDoCampo2´]:= ´BLABLABLA´; // Campo NomeDoCampo2 é string
ADOQuery1.FieldValues[´NomeDoCampo3´]:= ´01/01/01´; // Campo NomeDoCampo3 é data
ADOQuery1.Post;
ADOQuery1.Active := false;
ADOConnection1.Connected := false;
end;
Nesse código, tudo se passa mais ou menos como no código anterior. Não é necessário que você forneça conteúdo a cada um dos campos de seu banco de dados. Forneça todos apenas se lhe for necessário, senão forneça apenas os que lhe interessa e os demais campos da tabela, neste novo registro que está sendo adicionado, serão considerados nulos.
Para editar um registro, insira um terceiro botão no seu form. No evento OnClick, escreva:
procedure TForm2.Button3Click(Sender: TObject);
begin
// Edição de registros do banco de dados
ADOConnection1.Connected := true;
ADOQuery1.Active := true;
AdoQuery1.close;
AdoQuery1.SQL.Clear;
AdoQuery1.sql.Add(´Select NomeDoCampo1, NomeDoCampo2 from NomeDaTabela Where NomeDoCampo1 = 989899´); //NomeDoCampo1 é um campo do tipo numérico
AdoQuery1.open;
ADOQuery1.Edit;
ADOQuery1.FieldValues[´NomeDoCampo2´]:= ´tESTEtESTEtESTE´; // NomeDoCampo2 é um campo do tipo string
ADOQuery1.Post;
ADOQuery1.Active := false;
ADOConnection1.Connected := false;
ADOQuery1.Free;
ADOConnection1.Free;
end;
E é isso aí.
Acredito que este seja o básico e essencial para manipulação de bancos de dados com as ferramentas ADO. Elas servem para manipular vários tipos de bancos de dados.
Espero que resolva.
Responder
Gostei + 1
Clique aqui para fazer login e interagir na Comunidade :)