1.在使用zeos时发现可以绕过外键删除数据,原来zeos默认没有打开外键功能,必须明确执行这个:
ZConnection1.Connect; ZConnection1.ExecuteDirect('PRAGMA foreign_keys=ON');
感谢网友步惊云提供解决方案!
2.使用zeos ZQuery.filter发现使用like '%aa%'不起作,最后在lazarus官方论坛找到答案,原来lazarus DB like的通配符使用*而不是使用常用的%,*的用法和%一样。
zquery1.filtered:=false; zquery1.filter:=' Abstract like '+quotedstr('*'+Edit1.text+'*'); zquery1.filtered:=true;
3.zeos SQLite加密的使用方法:
lazarus在linux arm64使用SQLite数据加密的方法
4.如果表使用了中文字段时,中文字段要用双引号:
ZQuery1.Filtered:=false; ZQuery1.Filter:='"地址"'+' like '+ QuotedStr( '*'+edit1.text+'*' ); ZQuery1.Filtered:=true;
5、如果使用SQLite3,经验告诉你,最好指定so和db绝对路径(so和db放执行文件同一目录)
ZConnection1.LibraryLocation:=ExtractFilePath(Application.ExeName)+'libsqlite3.so'; ZConnection1.Database:=ExtractFilePath(Application.ExeName)+'demo.db3';
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~