|
|
导航: |
论坛 -> DELPHI技术
斑竹:liumazi,sephil |
|
作者: |
|
2019/12/16 11:59:43 |
标题: |
sqlite 中文插入变二进制了.. |
浏览:1110 |
|
加入我的收藏 |
楼主: |
procedure TSQLiteDatabase.ExecSQL(const SQL: Ansistring; const Bindings: array of const); var Stmt: TSQLiteStmt; NextSQLStatement: PAnsiChar; iStepResult: integer; begin try // SQL := Utf8ToAnsi(SQL)); ?? if Sqlite3_Prepare_v2(self.fDB, PAnsiChar(SQL), -1, Stmt, NextSQLStatement) <> SQLITE_OK then RaiseError('Error executing SQL', SQL);
怎么解决? 以方便java它们读正常!
----------------------------------------------
delphi界写python最强, python界写delphi最强. 写自己的代码, 让别人去运行. |
作者: |
|
2019/12/16 12:27:27 |
1楼: |
Ansi UTF8 ? 你的 sqlite 控件 他自己会不会正确处理呢? 我不知道,我只知道 FIREDAC 只支持 String 作为 SQL 的内容类型。 至于数据的编码 那是 连接数据源负责的。 SQL 代码不负责。
----------------------------------------------
(C)(P)Flying Wang
|
作者: |
|
2019/12/16 12:54:43 |
2楼: |
SQLite3_Open 没编码指定..
连接就这样的.
utf8FileName := UTF8String(FileName); iResult := SQLite3_Open(PAnsiChar(utf8FileName), Fdb); if iResult <> SQLITE_OK then
----------------------------------------------
delphi界写python最强, python界写delphi最强. 写自己的代码, 让别人去运行.
|
作者: |
|
2019/12/16 14:52:23 |
3楼: |
用delphi写入中文, 就成这样了. 但delphi读出来是正常的.
但java读不了. 乱码.
此帖子包含附件:
大小:17.1K |
----------------------------------------------
delphi界写python最强, python界写delphi最强. 写自己的代码, 让别人去运行.
|
作者: |
|
2019/12/17 15:06:02 |
4楼: |
楼主,有几个地方需要你确认一下: 1)DELPHI用的啥子CHARSET? 2)SQLITE用的啥子CHARSET? 3)JAVA用的啥子CHARSET? 您确认好了,大概也许可能或者。。。你就知道乱码的原因了。
----------------------------------------------
中间件QQ群: 92449782 博客: http://www.cnblogs.com/hnxxcxg/
|
|