FireDAC 下的 Sqlite [12] - 备忘录(草草结束这个话题了)

FireDAC 下的 Sqlite [12] - 备忘录(草草结束这个话题了),第1张

概述该话题的继续延伸主要就是 SQL 的语法了, 草草收场的原因是现在的脑筋已经进入了 IntraWeb 的世界. 相关备忘会随时补充在下面: //连接多个数据库的参考代码:FDConnection1.ExecSQL('ATTACH ''c:\hr.sdb'' AS hr');FDConnection1.ExecSQL('ATTACH ''c:\cust.sdb'' AS cust');FDQu 该话题的继续延伸主要就是 sql 的语法了,草草收场的原因是现在的脑筋已经进入了 IntraWeb 的世界.

相关备忘会随时补充在下面:
//连接多个数据库的参考代码:FDConnection1.Execsql('ATTACH ''c:\hr.sdb'' AS hr');FDConnection1.Execsql('ATTACH ''c:\cust.sdb'' AS cust');FDquery1.Open('select * from "Orders" o ' + 'left join hr."Employees" e on o.EmployeeID = e.EmployeeID ' + 'left join cust."Customers" c on o.CustomerID = c.CustomerID');//sqlite_OnAuthorize 参考代码:procedure TForm1.FormCreate(Sender: TObject);begin FDConnection1.Connected := True; TsqliteDatabase(FDConnection1.ConnectionIntf.CliObj).Onautorize := DoAuthorize; FDquery1.Open;end;procedure TForm1.DoAuthorize(ADB: TsqliteDatabase; ACode: Integer; const AArg1,AArg2,AArg3,AArg4: String; var AResult: Integer);begin Memo1.lines.Add(Format('%d - %s - %s - %s - %s',[ACode,AArg1,AArg4])); if ACode = sqlITE_DELETE then  AResult := sqlITE_DENY else  AResult := sqlITE_OK;end;//sqlite_OnUpdate 参考代码:procedure TForm1.FormCreate(Sender: TObject);begin FDConnection1.Connected := True; TsqliteDatabase(FDConnection1.ConnectionIntf.CliObj).OnUpdate := DoUpdate; FDquery1.Open;end;procedure TForm1.DoUpdate(ADB: TsqliteDatabase; AOper: Integer; const ADatabase,Atable: String; ARowID: sqlite3_int64);begin Memo1.lines.Add(Format('%d - %s - %s - %u',[AOper,ADatabase,Atable,ARowID]));end;//快速选择到行:SELECT * FROM Orders WHERE ROWID = :RID//TFDMemtable 代替 TClIEntDataSet<pre class="Delphi">procedure TForm1.FormCreate(Sender: TObject);begin with FDMemtable1.FIEldDefs.AddFIEldDef do begin  name := 'word';  DataType := ftString;  Size := 50; end; with FDMemtable1.FIEldDefs.AddFIEldDef do begin  name := 'ph';  DataType := ftString;  Size := 50; end; with FDMemtable1.FIEldDefs.AddFIEldDef do begin  name := 'note';  DataType := ftString;  Size := 255; end; with FDMemtable1.FIEldDefs.AddFIEldDef do begin  name := 'num';  DataType := ftInteger; end; FDMemtable1.IndexDefs.Add('Index_1','word',[ixPrimary]); FDMemtable1.CreateDataSet;end;

//并发相关: http://docwiki.embarcadero.com/RADStudio/XE6/en/Using_sqlite_with_FireDAC#Locking_and_Concurrent_Updates
总结

以上是内存溢出为你收集整理的FireDAC 下的 Sqlite [12] - 备忘录(草草结束这个话题了)全部内容,希望文章能够帮你解决FireDAC 下的 Sqlite [12] - 备忘录(草草结束这个话题了)所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/sjk/1170185.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-02
下一篇 2022-06-02

发表评论

登录后才能评论

评论列表(0条)

保存