| Você está aqui: Delphi ::: dbExpress ::: TSQLConnection | 
| Como criar uma classe de conexão a bancos de dados para suas aplicações Delphi usando dbExpressQuantidade de visualizações: 16734 vezes | 
| A forma mais comum de se criar uma conexão com um banco de dados usando dbExpress é colocar um componente TSQLConnection em um TDataModule (usado para centralizar os componentes não visuais) e acessá-lo a partir das outras partes que compõem o programa. Porém, haverá situações em que gostaríamos de ter uma classe que, não somente permita a conexão com o banco de dados, mas também efetue algumas operações adicionais. Nesta dica eu mostro como podemos criar uma classe chamada TConexao que encapsula um objeto da classe TSQLConnection. Para isso, siga atentamente os passos abaixo: [a]a) Vá em File -> New -> Unit - Delphi. Isso vai gerar uma nova unit parecida com: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- unit Unit1; interface implementation end. b) Salve esta unit com o nome de Conexao.pas e altere o seu código para: ----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------
unit Conexao;
interface
uses Classes, Dialogs, SqlExpr, DBXCommon;
type
  TConexao = class
    private
      conn: TSQLConnection; // uma referência a um TSQLConnection
    public
      // construtor da classe
      constructor Create;
      // uma função que retorna a conexão com o banco de dados
      function getConexao: TSQLConnection;
  end;
implementation
constructor TConexao.Create;
begin
  // vamos criar a conexão com o banco de dados
  conn := TSQLConnection.Create(nil);
  // vamos definir os parâmetros da conexão...note que
  // aqui estou usando uma conexão com o MS SQL Server usando
  // Windows Authentication
  begin
    conn.ConnectionName := 'MSSQLConnection';
    conn.DriverName := 'MSSQL';
    conn.LibraryName := 'dbxmss.dll';
    conn.VendorLib := 'oledb';
    conn.GetDriverFunc := 'getSQLDriverMSSQL';
    conn.LoginPrompt := False;
    // parâmetros adicionais da conexão
    conn.Params.Add('SchemaOverride=sa.dbo');
    conn.Params.Add('HostName=NOTEBOOK');
    conn.Params.Add('DataBase=estudos');
    conn.Params.Add('OS Authentication=True');
    // vamos abrir a conexão
    try
      begin
        conn.Open;
      end;
    except
      on e : TDBXError do // uses DBXCommon
         begin
           ShowMessage('Não foi possível efetuar a conexão. Erro: ' +
              e.Message);
           conn := nil;
         end;
    end;
  end;
end;
function TConexao.getConexao;
begin
  // retorna a conexão criada
  Result := conn;
end;
end.
Note que esta classe possui um método construtor que usamos para criar um novo objeto da classe TSQLConnection, informar os parâmetros da conexão e abrí-la usando seu método Open. A conexão obtida é retornada para o chamador usando o método getConexao. Veja agora como podemos, a partir do evento Click de um botão, criar um novo objeto da classe Conexao e verificar se a conexão foi retornada com sucesso: ----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------
procedure TForm3.Button1Click(Sender: TObject);
var
  conexao: TConexao; // uma referência à classe Conexao
  conn: TSQLConnection; // uses SqlExpr, DBXMsSQL, DBXCommon
begin
  conexao := TConexao.Create; // vamos criar o objeto Conexao
  // vamos agora obter a conexão
  conn := conexao.getConexao;
  // vamos verificar se a conexão foi efetuada com sucesso
  if conn <> nil then
    ShowMessage('Conexão retornada com sucesso.');
end;
Uma vez obtida a conexão, podemos fornecê-la à propriedade SQLConnection de um TSQLDataSet, por exemplo. A criação de uma classe de conexão é um dos primeiros passos para posicionar todo o código que interage com o banco de dados no seu devido lugar, ou seja, na camada de banco de dados, e não misturado aos componentes de negócio e interface com o usuário. | 
|  Link para compartilhar na Internet ou com seus amigos: | 
| Desafios, Exercícios e Algoritmos Resolvidos de Delphi | 
| Veja mais Dicas e truques de Delphi | 
| Dicas e truques de outras linguagens | 
| E-Books em PDF | ||||
| 
 | ||||
| 
 | ||||
| Linguagens Mais Populares | ||||
| 
			   1º lugar: Java | 


 
 




