mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-05-03 20:23:51 +02:00
53 lines
1.3 KiB
ObjectPascal
53 lines
1.3 KiB
ObjectPascal
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.
|