fpc : lazarus SQLite3

前端之家收集整理的这篇文章主要介绍了fpc : lazarus SQLite3前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

from http://wiki.lazarus.freepascal.org/sqldb_Tutorial1/zh_CN

sqldb :: Tsqlite3Connection 连接 sqlite3

在组件面板的sqldb控件页拖拉一个Tsqlite3Connection,一个 TsqlTransaction 和一个 TsqlQuery 控件到窗体。

组件连接关系(Link the components)

连接组件:如果使用对象检查器是非常简单的,也可以使用代码来实现。

1. 设置 sqlite3Connection1 的 'Transaction' 属性指向 'sqlTransaction1',

2. 设置sqlTransaction1 的 'Database' 属性自动变更为 'sqlite3Connection1';DatabaseName: 填写test.db

3. 设置 sqlQuery1 的 'Database' 属性指向 'sqlite3Connection1',Lazarus 会自动添加 'Transaction' 属性值;

4. 设置 Datasource1 的 'Dataset' 属性指向 'sqlQuery1';

5. 设置 DBGrid1 的 'Datasource' 属性指向 'Datasource1'

如果你装了Python 2.7,那么 sqlite3.dll 就在\Python27\DLLs\ ;
sqlite3.dll copy to 你的project 目录下 .

代码片段

procedure TForm1.Button1Click(Sender: TObject);
var
  code,sh,city: String;
begin
  code := MaskEdit1.Text;
  sh := copy(code,1,2)+'0000';
  city := copy(code,4)+'00';
  try
    sqlQuery1.Close;
    sqlQuery1.sql.Clear;
    sqlQuery1.sql.Add('select code as 区划编码,cname as 地名 from table ');
    sqlQuery1.sql.Add('where code in (:sh,:city,:code)');
    sqlQuery1.sql.Add('order by code');
    sqlQuery1.Params.ParamByName('code').AsString := code;
    sqlQuery1.Params.ParamByName('sh').AsString := sh;
    sqlQuery1.Params.ParamByName('city').AsString := city;
    sqlite3Connection1.Connected:= True;
    sqlTransaction1.Active:= True;
    sqlQuery1.Open;
  except
    StatusBar1.SimpleText := '连接数据库 sqlite3 出错.';
  end;
end;
原文链接:https://www.f2er.com/sqlite/199312.html

猜你在找的Sqlite相关文章