Вы находитесь на странице: 1из 16

!

" # "
$
% & ' (

!"
"
##$$$% &! % %& # ' ( % ) *+ ' %

, - . / 0 1
' % 1 2
3 ' 3 "

456 7
456 4 7
4565 7
4564 8 7
4569 & 7
456:
456 4 %

9 ; ; .
456 4 < & = 3
%, < & 4 4 %

: '
%

> ' %

? 1 3 <
= &
@%' & % A ? 3 &
B & ?< C %
D 3 456 "
< 1 & %

> ; " 3 ? 1 3
E & F & 3 &
1
1 ' ; "
G & & H
%
<
, %
, < 3 1 &
%
6' 8 < 3 1
%
8 @ &
"

" < 3 &


% F< C 3 F
8 &
; %
" < 3 1
& % ? & %
I 0 %
" < 3 1 1 %
" < 1 %

J &? C / 3
1 456 %

@8 < J ; "

456 +%8 %, 8 "


*D 7

I 4 ? ' & %
456 4
4 8 4 8 3 &
J = & & 4 8 & %
456 4 ? 4 2
' J 2 '
? E , % ; 2 ;K
< C 456 %

> "
> < 1
9 ' & %
9 < ' ' 456 %8
K %%
9 < 3 < 9 %4
5 4 8 9& %
4 < 3 1 & 9 4 3 1
456 4 %
456 < 3 1 9456 3 1
& %

4565 456 &


K K %% 4565 &? ? 2
; 456%

4 "

> < 4565 1 %


456 A < 3 456 1
5 %
456 < 3 1 9456 3 1
& %

4564 8 ? =
< ;
& %8 3
; % 9 &? ? %> ;K
456%

8 "
> < 4564 8 1 %
456 < 3 1 9456 3 1
& %
4 8 , <
J %

4569 & & & % 94569 &


& < &? ?
; ' %9 & B &
;K K %%

8 "

> < 4569 & 1 L & < %


456 < 3 1 9456 3 1
& %
9& , A < 3 & %

456: ? < ; ;
; & % ' ' 456
L ' %

8 "
> < 456: 1 '
& %
> 4 < & '
3 %
E , < 3 1 3 3 & 1 '
%
456 < 3 1 9456 3 1
& %
9 6 A
' %A ' %> ?
3 ' '
& %

456 4 ? 9456 4
9 4 8 & % &
& & ;K '; %
B 2 ;
< ; %8
;K ' 1C & %A =
9 M %

8 456 4 "

> < 1 456


< ;K % &
< 2 %8 ?
%
9 < 456 %
9 < 3 < 9 %4
5 4 8 9& %
< 3 1 3 1 &
%
!" # "$ %

4 4 < ' 456 4 .%


< ; &1 456 4 <
;K < %

8 "

> < 1 456


< ;K % &
< 2 %8 ?
%
< 3 1 3 1 &
%
4 < C 4
4 4 %4 & "

" < 1 %
" < 3 1 456
%
" < 3 ?
9 %4 5 4 8 9& %

> 3 1
456 4 %
>' 3 1 3 '
< ;K - E & + ;
+%N%/%ONP % 1 .
' %

8 & B &
' < ;K %8
& & 3 %" %
' 456"

create database 'Testedb.gdb';


connect 'Testedb.gdb';

create table Comandos(Sintaxe varchar(30) not null,


Funcao varchar(50),
constraint Sint_Chave primary key(Sintaxe));

4 3 E & #
F & 1 F3% '
3 Q& ; :4C
& C 3 R "
QE & Q& Q &' % "

C:\Firebird\Bin\>isql u SYSDBA p masterkey

5 F3 ' "

SQL> input c:\pasta\Banco.txt; [Enter]

S TL ' 3 & 1 %
exit; F3 & ? !
< < <
:4C R & 1 %, ;
< ; & 456
1 ? %8 & &
E & "##
$$$% % %& #
> % U
> 1 E & %

>' 3 & 1 1 ;
%

: " R
# R
# $# %
8 3 6V> )8 3 & &
%
: < 1 ' "

, < ' "

%
#F
%F &
! %E

<
%
3 & <
3 ! %

> & '


456 +%
I 456 4 K ;K K
4565 %
A < & ;K
E & #
F & %

9 ;K ? & #
4 '
' & %D < "

D ' < ' '


;K < &
< ;K & %
' )>' & '
; <1 < ;K
%A 3 ;K %
5 ; & < 2
' & 3 # ' % 2
' & 3 ;
% '
; & &
; & %

; & ! 8
& #
4 < ; '
' ;
< ;K %

, ;
& &? %5
& ; 3
=
' 3 1 3 %
8 < ; ' &
< ;K ; '
< ;K ( )%

8 ;K
1 = "

var
Form1: TForm1;
Transacao: TTransactionDesc;

implementation

{$R *.xfm}

>9 ? 3 < ; %I
? 3 < ; %
I ;K ;K & % ?
; & #
4 %

3 & ' # 2 ' ' "


procedure TForm1.BtIncluirClick(Sender: TObject);
begin
try
Transacao.TransactionID := 1;
Transacao.IsolationLevel := xilREPEATABLEREAD;
SQLConnection1.StartTransaction(Transacao);
SQLDataSet1.Close;
SQLDataSet1.CommandType := ctQuery;
SQLDataSet1.CommandText := 'insert into
Comandos(Sintaxe, Funcao) values(:Sint, :Func)';
SQLDataSet1.ParamByName('Sint').AsString :=
EdSintaxe.Text;
SQLDataSet1.ParamByName('Func').AsString :=
EdFuncao.Text;
SQLDataSet1.ExecSQL;
SQLConnection1.Commit(Transacao);
except
on Exc:Exception do
begin
ShowMessage('Ocorreu um erro na tentativa de
incluso do registro: ' + Exc.Message);
SQLConnection1.Rollback(Transacao);
end;
end;
end;

< B ; 3 < 9 F "


* +%
B ; B ;K
%F ? 1 3 ;
& 3 < %

6' & < F 6 ; % F 6


; '1 ;K J 3
& & %8 < ;K &
= ; %

F ; 456 +%4 9 9 7

456 456 4 +% > "


J
8 , %> 9 "
*D 7

8 < 456 4 +% 456 < ;


456 % 9 %

' 456 1 & & 1


2 ' ;
456 %S & ! 9 ' & %
3 & # 2 ' ' "

procedure TForm1.BtAlterarClick(Sender: TObject);


begin
try
Transacao.TransactionID := 1;
Transacao.IsolationLevel := xilREPEATABLEREAD;
SQLConnection1.StartTransaction(Transacao);
SQLDataSet1.Close;
SQLDataSet1.CommandType := ctQuery;
SQLDataSet1.CommandText := 'update Comandos set Sintaxe
= :Sint, Funcao = :Func where Sintaxe = :Sint';
SQLDataSet1.ParamByName('Sint').AsString :=
EdSintaxe.Text;
SQLDataSet1.ParamByName('Func').AsString :=
EdFuncao.Text;
SQLDataSet1.ExecSQL;
SQLConnection1.Commit(Transacao);
except
on Exc:Exception do
begin
ShowMessage('Ocorreu um erro na tentativa de
alterao do registro: ' + Exc.Message);
SQLConnection1.Rollback(Transacao);
end;
end;
end;

3 & * ' # 2 ' ' "

procedure TForm1.BtExcluirClick(Sender: TObject);


begin
try
Transacao.TransactionID := 1;
Transacao.IsolationLevel := xilREPEATABLEREAD;
SQLConnection1.StartTransaction(Transacao);
SQLDataSet1.Close;
SQLDataSet1.CommandType := ctQuery;
SQLDataSet1.CommandText := 'delete from Comandos where
Sintaxe = :Sint';
SQLDataSet1.ParamByName('Sint').AsString :=
EdSintaxe.Text;
SQLDataSet1.ExecSQL;
SQLConnection1.Commit(Transacao);
except
on Exc:Exception do
begin
ShowMessage('Ocorreu um erro na tentativa de
excluso do registro: ' + Exc.Message);
SQLConnection1.Rollback(Transacao);
end;
end;
end;

3 & ' 2 ' ' "

procedure TForm1.BtProcurarClick(Sender: TObject);


var
Consulta: string;
begin
if Trim(EdBusca.Text) <> '' then
begin
Consulta := 'select Sintaxe, Funcao from comandos
where ';
//No campo:
if RadioCampo.ItemIndex = 0 then
Consulta := Consulta + 'Sintaxe '
else
Consulta := Consulta + 'Funcao ';

//Que:
if RadioTipo.ItemIndex = 0 then
begin
Consulta := Consulta + 'starting with ''' +
EdBusca.Text + '''';
end
else
if RadioTipo.ItemIndex = 1 then
Consulta := Consulta + 'like ''%' +
EdBusca.Text + '%'''
else
Consulta := Consulta + 'like ''%' +
EdBusca.Text + '''';

try
Transacao.TransactionID := 1;
Transacao.IsolationLevel := xilREPEATABLEREAD;
SQLConnection1.StartTransaction(Transacao);
SQLQuery1.Close;
SQLQuery1.SQL.Clear;
SQLQuery1.SQL.Append(Consulta);
SQLQuery1.Open;
SQLConnection1.Commit(Transacao);
except
on Exc:Exception do
begin
ShowMessage('Ocorreu um erro na consulta: '
+ Exc.Message);
SQLConnection1.Rollback(Transacao);
end;
end;
CarregaLista;
end;
end;

1 4565 %
> 456 4565 ? ' 3 ?
%
6 B 456 4565 456%
< L %

1 < 1 <
S M %8 < ;K & 456 <
& E & %

>2 '6 3
6 D $ S 4 & 2 ' ? ' "

procedure TForm1.CarregaLista;
begin
SQLQuery1.First;
ListView1.Items.Clear;
while true do
begin
ListView1.Items.Add;
ListView1.Items.Item[ ListView1.Items.Count - 1
].Caption := SQLQuery1.Fields.Fields[0].AsString;
ListView1.Items.Item[ ListView1.Items.Count - 1
].SubItems.Add(SQLQuery1.Fields.Fields[1].AsString);
try
SQLQuery1.Next;
except
break;
end;
end;
end;

> < ' "


>2 4565
4 ' 4565 +%E %
3 ; < $ ? ' '
4 1C 6 D $ 4565 %,
E WNX E W
+X%
6' 3 4 ' B ' 4565 %,
1 ; ' & !
%

, + ) 3 6 D $+ ' "

procedure TForm1.ListView1DblClick(Sender: TObject);


begin
EdSintaxe.Text := ListView1.ItemFocused.Caption;
EdFuncao.Text := ListView1.ItemFocused.SubItems.Text;
end;

F <1 3 3 '
B < ; %

3 < 1 ' 2 ' "

procedure TForm1.FormCreate(Sender: TObject);


begin
try
SQLConnection1.Connected := true;
except
ShowMessage('Erro ao tentar conectar-se ao banco.');
end;
end;

> 3 < < ; 1 & %


+ < ' "

procedure TForm1.FormClose(Sender: TObject; var Action:


TCloseAction);
begin
SQLConnection1.Connected := false;
end;

3 < < < %

>' 1 < 1 &1 ;K


< ;K & % 42 0 L %
! & '(&

, 2 4 '1 3
< %8
4565 Y6 D $ L ' %

: ;K 4 '1 <
1 ;
1 %8 3
4 1 '1 ? M %

< %8 456 4
- 4 4 = .%

I 456 4

: < 1 <' 6V > "

<' 3 %

, 456 +%
8 Z @< :>, 4[ 3
& % 5
%

, ' 456 4 +%

, ! 4 K %
' & M %
S ; & K , ' %
9 4 '1 1 %

456 4 ? 2 ' &


; & L3 ; % ?
3 ' ' %

456 4 & & #4


& ! < < L &
J 456 E %

5 < & ;K 456 1 \ &


3
' %: 3 <
E & ? ; <
& & 2 %8
& #
4 < <
;K 456 < E %

I 4 4 .

8 4 4 < &
456 4 4 4 %

, &%
>& Z @<
:>, 4[ 3 & % 5
' ' &%

> 4 4 456 &


' M %
S ; 1 & ' , ' %

, 2 ' 3 < L ;
< ? ' %: ?
&1 ? ;
#
4 4 '1 3
%
' ?& < 3 ?3 <
; ; 456
K # ;K 3 < < %> ;K
< ';
' ? %
1 ;
<
; 3 ; & %

3
' < < %

Вам также может понравиться