summaryrefslogtreecommitdiff
path: root/packages/sqlite/tests/test.pas
blob: 8e6a130dacdeb02df1dc96b39b52c2cd3f52adcd (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
program test;

uses sqlite3,sqlite3db, strings,classes;

var
  MySQL: TSQLite;
  SQL: String;
  i, j: Integer;
  a: TStringList;
begin
  Writeln('Creating class');
  MySQL := TSQLite.Create('test.db');
  MySQL.BusyTimeout := 1000;

 // writeln(MySQL.Version);
  Writeln('Creating table');
  SQL := 'CREATE TABLE Test(No int, Nom varchar(32),Prenom varchar(32));';
  MySQL.Query(sql, nil);
  SQL := 'INSERT INTO Test VALUES(1,''Coursiere'', ''Olivier'');';
  if MySQL.IsComplete(sql) then
    begin
    Writeln('Inserting first row');
    MySQL.Query(sql, nil);
    end;
  SQL := 'INSERT INTO Test VALUES(2,''Jourde'', ''Eric'');';
  if MySQL.IsComplete(sql) then
    begin
    Writeln('Inserting second row') ;
    MySQL.Query(sql, nil);
    end;
  Writeln('Selecting rows') ;

  SQL := 'SELECT * FROM Test;';
  MySQL.Query(sql, nil);
  writeln('Fields Names -------------------');
  for i:=0 to MySQL.List_FieldName.count-1 do
    writeln(i,' -> ',MySQL.List_FieldName.Strings[i]);
  writeln('Fields -------------------');
  for i:=0 to MySQL.List_Field.count-1 do
      begin
        a:=TStringList(MySQL.List_Field.items[i]);
        write(i,' -> ');
        for j:=0 to a.count-1 do
          write(a.Strings[j],'  ');
        writeln('');
      end;

// Uncomment to remove table again.
//  SQL := 'DROP TABLE Test;';
//  MySQL.Query(sql, nil);
  MySQL.Free;
end.