Olá galera, nesta Quick Tips, irei mostra como podemos criar uma procedure e nela fazer chamadas ao nosso banco de dados sem usar componente visual, como por exemplo, ADOQury, Query, SQLQuery, entre outros, vejamos como fazer isso.
Vamos então criar uma nova aplicação e salvar seu formulário como uFrmPrincipal.pas, já mude seu nome para FrmPrincipal, e salve o projeto como prjAcessoBD.dprj.
Vamos adicione neste formulário :
1 - SQLConexao: TSQLConnection; - Conectado ao MySQL ou outro banco
1 - BtnVisualizar: TButton;
1 - EdtData: TEdit;
1 - ChckBxData: TCheckBox;
Veja como deverá ficar nosso exemplo
Vamos inicialmente criar uma function:
- function GetSysDate (xOnlyDate: Boolean = False): String;
unit uFrmPrincipal;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls,
Forms,Dialogs, WideStrings, DBXMySql, DB, SqlExpr, StdCtrls;
type
TFrmPrincipal = class(TForm)
SQLConexao: TSQLConnection;
BtnVisualizar: TButton;
EdtData: TEdit;
ChckBxData: TCheckBox;
private
function GetSysDate(xOnlyDate: Boolean = False): String;
{ Private declarations }
public
{ Public declarations }
end;
Vamos agora a implementação da mesma
function TFrmPrincipal.GetSysDate(xOnlyDate: Boolean = False) : String;
Var
xQry : TSQLQuery;
begin
Try
{ Instanciamos o Objeto xQry através do método create da sua
Classe TSQLQuery. }
xQry := TSQLQuery.Create(Self);
With xQry do
Begin
{ Em seguida configuramos o mesmo como se fosse usando a IDE,
passamos a conexão, informamos o Script e depois usamos o
método Open, para abrir mesmo}
SQLConnection := SQLConexao;
SQL.Clear;
SQL.Add('select SYSDATE()');
Open;
if xOnlyDate then
Result := FormatDateTime('dd/mm/yyyy', Fields[0].AsDateTime)
else
Result := Fields[0].AsString
end;
Finally
FreeAndNil(xQry);
End;
end;
procedure TFrmPrincipal.BtnVisualizarClick(Sender: TObject);
begin
{ Como vocês podem notar estou usando a propriedade Checked para
visualizar apenas a data ou não. }
EdtData.Text := GetSysDate(ChckBxData.Checked);
end;
Fico por aqui ate à próxima Quick Tips. Baixe o exemplo completo neste post.
Um abraço
Wesley Y