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, First varchar(32),Last varchar(32));';
MySQL.Query(sql, nil);
SQL := 'INSERT INTO Test VALUES(1,''John'', ''Spikowski'');';
if MySQL.IsComplete(sql) then
begin
Writeln('Inserting first row');
MySQL.Query(sql, nil);
end;
SQL := 'INSERT INTO Test VALUES(2,''Charles'', ''Pegge'');';
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.