• 0
Sign in to follow this  
Kikonanet

Dúvida Rápida

Question

Eu estou começando com a usar a palheta Interbase....

Eu queria uma ajuda: Como faço para usar os comandos SQL com os componentes desta Palheta?

Detalhando...

Com ADOQuery eu usava ADOQuery1.SQL.Add('') como eu uso no IBTable, IBQuery,....

Valeu unsure.gif

Share this post


Link to post
Share on other sites

2 answers to this question

Recommended Posts

  • 0

Para uma dúvida rápida nada melhor que uma resposta longa (smile.gif).

Bem, vou demonstrar como fazer a conexão que você quer com o uso dos componentes IBX (Interbase Express). Vale lembrar que a conexão IBX possui componentes especialmente desenvolvidos para dar acesso nativo ao banco de dados Interbase, não utilizando nenhuma engine de acesso aos dados.

Os componentes a serem utilizados são:

- IBDataBase: responsável pela conexão entre a aplicação e o banco de dados Interbase;

- IBTransaction: responsável pelo controle das transações efetuadas pela aplicação;

- IBDataSet (ou IBQuery junto com IBUpdateSQL);

- DataSource.

Vou dar o exemplo utilizando o IBDataSet ao invés do IBQuery mais IBUpdateSQL. Eu estou utilizando o DELPHI 7.

Descrição de cada componente:

- IBDataBase: responsável pela conexão entre a aplicação e o banco de dados Interbase;

- IBTransaction: responsável pelo controle das transações efetuadas pela aplicação;

- IBDataSet: componente responsável pela manutenção dos dados contidos em uma tabela. O IBDataSet deve ser ligado ao IBTransaction por intermédio da propriedade 'Transaction', e ao IBDataBase por intermédio da propriedade 'Database';

- DataSource: componente responsável pela ligação entre a fonte que contém os dados (no nosso caso, o IBDataSet) e os componentes DataWare (por exemplo, DBEdit, DBGrid, etc.)

1) Insira no seu form o componente IBDataBase, que se encontra na guia Interbase;

2) Agora é necessário configurar o IBDataBase1 para acessar o seu banco de dados interbase. Para tanto, dê um duplo-clique sobre o IBDataBase1 e uma caixa de diálogo será aberta. Na caixa De texto 'Database' digite o caminho e o nome do banco de dados (.GDB) a ser utilizado. Na caixa de texto 'UserName' digite 'SYSDBA' e na caixa de texto Password digite 'masterkey'. Configure a caixa de seleção 'LoginPrompt', habilitando ou não a necessidade de se fazer login para acessar o banco de dados. Teste a conexão clicando em TEST e se tudo der certo, aparecerá uma mensagem dizendo que a conexão foi realizada com sucesso;

3) Insira no seu form o componente IBTransaction que se encontra na guia Interbase e Altere a sua propriedade 'DefaultDatabase' do object inspector para 'IBDatabase1';

4) Selecione novamente o componente IBDatabase1 e altere a sua propriedade DefaultTransaction para IBTransaction1;

5) Insira no seu form o componente IBDataSet1 que se encontra na guia Interbase e um componente DataSource que se encontra na guia DataAccess;

6) Selecione o componente IBDataSet1 e altere a sua propriedade 'DataBase' para IBDataBase1 (isto liga o DataSet ao banco de dados). Observe que a propriedade 'Transaction' do IBDataSet1 já foi automaticamente preenchida para IBTransaction1;

7) Selecione o componente DataSource1 e altere a sua propriedade 'DataSet' para IBDataSet1.

PRONTO, a conexão está feita.

8) Para fazer a consulta SQL, selecione o componente IBDataSet1, clique com o botão direito do mouse e, ao abrir o menu suspenso, clique sobre a opção EDIT SQL. Basta digitar sua sentença SQL no quadrao do lado direito;

9) Com o IBDataSet você poderá fazer isto que você comentou sobre o ADOQuery, só que da seguinte forma:

- IBDataSet1.Close;

- IBDataSet1.SelectSQL.Clear;

- IBDataSet1.SelectSQL.Add(SuaVariavelQueContemASentencaSQL);

- IBDataSet1.Open;

OBSERVAÇÕES:

1) Este tipo de conexão serve também para acessar um banco de dados Firebird. No entanto, é necessário observar que ela não é recomendada para o FireBird 1.5. Caso vc. queira usar o Firebird, minha sugestão é não utilizar componentes IBX, mas sim os componente DBExpress;

2) Na minha opinião, o uso do IBDataSet ao invés da dupla IBQuery mais IBUpdateSQL é melhor é mais rápido;

3) Caso você queira usar o IBQuery mais o IBUpdateSQL, basta retirar o IBDataSet e fazer os ajuste necessários, os quais você conseguirá fazer sem problemas;

4) Clicando com o botão direito do mouse sobre o IBDataSet você encontra opções já conhecidas como o FIELDS EDITOR. Outras opções bem úteis são EDIT SQL e o DATASET EDITOR.

Abraços. smile.gif

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this