首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

sqlite乱码有关问题

2012-02-13 
sqlite乱码问题今天做了一个程序,是关于delphi连接sqlite的,sqlite里面的字段设置都是用nvarchar类型的但

sqlite乱码问题
今天做了一个程序,是关于delphi连接sqlite的,sqlite里面的字段设置都是用nvarchar类型的
但是如果结合三方控件,连接成功sqlite的时候,在delphi界面上显示却是乱码,我是在formcreat事件中写的
  cn_SQLITE.Close;
  cn_SQLITE.Database := '.\chaobiao.db';
  cn_SQLITE.Open;
然后开始进行插入语句,但是如果执行的时候就出现乱码~为什么呢?

[解决办法]

你可以找找管理工具查看你的资料表:
关于管理工具:
SQLITE ADMINISTRATOR是以ANSI处理资料的
SQLITE BrowER是以UTF8处理的。

另外橙子写的一个管理工具同时支持两种编码。


ASQLITE如是UTF8编码方式时,插入数据会是乱码。但直接以控件上的数据插入却不会乱码,例
query1.sql.text:='insert into test (name) values ('+quotedstr(edit1.text)+')';

所以使用UTF8就不能直接使用GRID编辑数据。

使用ANSI有另一个BUG,中文模糊查询时会出错 例:select * from user where name like '陈%'
结果出来,不是姓陈的也会出来,
使用3.2.1版本的SQLITE3.DLL可以解决这个中文查询问题。

ASQLITE有一BUG,偶尔不能在GRID中保存数据。使用ZEROLIB比较不错,但生成的EXE比较大。


热点排行