Curso de ADO.NET e BDP - Parte V
Acesso a dados no Delphi 8 for .NET
Parte V – Consultas parametrizadas com o BdpParameter
Nesta quinta parte do curso de acesso a dados no Delphi 8 for .NET conheceremos o BdpParameter , utilizado para construir consultas parametrizadas com o BDP, o provider da Borland para o ADO.NET.
Consultas parametrizadas são um dos fundamentos da programação cliente / servidor e multicamadas, é essencial que você conheça como criar esse tipo de consulta ao utilizar o ADO.NET, reduzindo tráfego desnecessário de dados na rede a maximizando a performance da aplicação. Usando parâmetros, você tem mais controle sobre quais registros devem ser deslocados do banco de dados até a cache de dados na parte cliente da aplicação.
Criando a consulta parametrizada
Faremos agora um exemplo prático que demonstra a utilização do BdpParameter . Inicie uma nova aplicação do tipo Windows Forms Application . Expanda a conexão Employee no Data Explorer e arraste a tabela Customer para o designer. Isso cria um BdpConnection e um BdpDataAdapter .
Clique de direita sobre o BdpDataAdapter e escolha a opção Configure Data Adapter Observe os comandos SQL gerados para o componente:
Observe que colocamos uma condição where na instrução select , indicando que queremos retornar somente o customer cujo CUST_NO for igual ao parâmetro informado (um parâmetro é representado no BDP pelo sinal “?”):
SELECT
CUST_NO, CUSTOMER, CONTACT_FIRST, CONTACT_LAST,
PHONE_NO, ADDRESS_LINE1, ADDRESS_LINE2, CITY,
STATE_PROVINCE, COUNTRY, POSTAL_CODE, ON_HOLD
FROM CUSTOMER
WHERE CUST_NO = ?
Clique na aba DataSet e gera o DataSet para o BdpDataAdapter , e clique em Ok.
Configurando o parâmetro
Com o BdpDataAdapter selecionado, clique sobre o símbolo [...] ao lado da sua propriedade SelectCommand.Parameters
No editor que abrirá, clique no botão Add para criar um novo BdpParameter , e configure suas propriedades conforme mostrado na figura a seguir:
Clique em Ok para confirmar a criação do parâmetro. Ative o BdpDataAdapter (Active = True).
Configurando o formulário principal
Coloque no formulário principal da aplicação os seguintes componentes: DataGrid , Button e TextBox . Configure as propriedades DataSource e DataMember do DataGrid . Você já deve estar visualizando o registro 1015 no DataGrid , pois inicializamos esse valor na propriedade Value do BdpParameter criando anteriormente.
Seu formulário deve estar semelhante ao mostrado a seguir:
Tudo o que precisamos fazer agora é repassar em tempo de execução o valor digitado no TextBox para o parâmetro criado anteriormente, e reativar o BdpDataAdapter . Isso é feito no evento Click do botão:
procedure TWinForm2.Button1_Click(sender: System.Object; e: System.EventArgs);
begin
BdpDataAdapter1.Active := False;
BdpDataAdapter1.SelectCommand.Parameters['CUST_NO'].Value :=
TextBox1.Text;
BdpDataAdapter1.Active := True;
end;
Parameters é um objeto do tipo BdpParamterCollection , uma coleção de BdpParameters . No código anterior acessamos o parâmetro CUST_NO através do seu nome, definido na criação do mesmo (propriedade ParameterName ). Execute a aplicação e digite um código válido no TextBox , e teste a consulta parametrizada:
Download
Você pode fazer download de todos os exemplos deste curso de acesso a dados no Delphi 8 com ADO.NET e BDP a partir do endereço http://cc.borland.com/cc/ccweb.exe/author?authorid=222668
Na próxima parte do curso conheceremos o BdpTransaction , utilizado para gerenciar transações no BDP. Um abraço e até lá!
Leia todos artigos da série
- Curso de ADO.NET e BDP - Parte I
- Curso de ADO.NET e BDP - Parte II
- Curso de ADO.NET e BDP - Parte III
- Curso de ADO.NET e BDP - Parte IV
- Curso de ADO.NET e BDP - Parte VI
- Curso de ADO.NET e BDP - Parte VII
- Curso de ADO.NET e BDP - Parte VIII
- Curso de ADO.NET e BDP - Parte IX
- Curso de ADO.NET e BDP - Parte X
- Curso de ADO.NET e BDP - Parte XI
- Curso de ADO.NET e BDP - Parte XII
- Curso de ADO.NET e BDP - Parte XIII
- Curso de ADO.NET e BDP - Parte XIV
- Curso de ADO.NET e BDP - Parte XV
- Curso de ADO.NET e BDP - Parte XVI
- Curso de ADO.NET e BDP - Parte XVII
- Curso de ADO.NET e BDP - Parte XVIII
- Curso de ADO.NET e BDP - Parte XIX
- Curso de ADO.NET e BDP - Final