DELPHI盒子
!实时搜索: 盒子论坛 | 注册用户 | 修改信息 | 退出
检举帖 | 全文检索 | 关闭广告 | 捐赠
技术论坛
 用户名
 密  码
自动登陆(30天有效)
忘了密码
≡技术区≡
DELPHI技术
lazarus/fpc/Free Pascal
移动应用开发
Web应用开发
数据库专区
报表专区
网络通讯
开源项目
论坛精华贴
≡发布区≡
发布代码
发布控件
文档资料
经典工具
≡事务区≡
网站意见
盒子之家
招聘应聘
信息交换
论坛信息
最新加入: tkzcol
今日帖子: 10
在线用户: 26
导航: 论坛 -> DELPHI技术 斑竹:liumazi,sephil  
作者:
男 tuesdays (Tuesday) ▲▲▲▲△ -
普通会员
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最强. 写自己的代码, 让别人去运行.
作者:
男 wang_80919 (Flying Wang) ★☆☆☆☆ -
普通会员
2019/12/16 12:27:27
1楼: Ansi UTF8 ?
你的 sqlite 控件 他自己会不会正确处理呢?
我不知道,我只知道 FIREDAC 只支持 String 作为 SQL 的内容类型。
至于数据的编码 那是 连接数据源负责的。 SQL 代码不负责。
----------------------------------------------
(C)(P)Flying Wang
作者:
男 tuesdays (Tuesday) ▲▲▲▲△ -
普通会员
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最强. 写自己的代码, 让别人去运行.
作者:
男 tuesdays (Tuesday) ▲▲▲▲△ -
普通会员
2019/12/16 14:52:23
3楼: 用delphi写入中文, 就成这样了. 但delphi读出来是正常的. 

但java读不了. 乱码.
此帖子包含附件:
PNG 图像
大小:17.1K
----------------------------------------------
delphi界写python最强, python界写delphi最强. 写自己的代码, 让别人去运行.
作者:
男 hnxxcxg (咏南中间件) ★☆☆☆☆ -
盒子活跃会员
2019/12/17 15:06:02
4楼: 楼主,有几个地方需要你确认一下:
1)DELPHI用的啥子CHARSET?
2)SQLITE用的啥子CHARSET?
3)JAVA用的啥子CHARSET?
您确认好了,大概也许可能或者。。。你就知道乱码的原因了。
----------------------------------------------
中间件QQ群: 92449782 博客: http://www.cnblogs.com/hnxxcxg/
信息
登陆以后才能回复
Copyright © 2CCC.Com 盒子论坛 v3.0.1 版权所有 页面执行800.7813毫秒 RSS