问题讨论:程序 C/C++ Java GUI编程 ASP Php Shell Perl Web开发 软件工程 三大件 机箱 存储设备 光存储 音频设备 视频设备 外设 购机
asp php java C CGI .net vb delphi unix|linux sql Word Excel WPS OutLook Powerpoint Dreamweaver FPage/Golive CSS/HTML DOM/JS
热门词:流程图 excel 入侵检测 vss Windows 安全漏洞 QQ空间 事件编程 MFC

 程序设计交流 > Php 

sqlite中文乱码,怎么解决?

[2007-11-14 19:13:00] [来源: 百家电脑学院] [我要投稿]

2006-8-11 10:57nj-racoon
sqlite中文乱码,怎么解决?

环境:apache2.0.55+php5.1.4+sqlite(php5.1.4自带得)
现在我往数据库插入中文时,再取出来是乱码,怎么解决?是不是要像Mysql那样设置字符集?谢谢

2006-8-11 11:47nj-racoon
刚刚用sqlite_libencoding查了下默认字符集是ISO-8859-1,但是我在插入数据时已经iconv("gb2312","ISO-8859-1", "你好"),取的时候也iconv了,但是好像没用啊,啥原因啊:oops::oops:

2006-8-11 13:37eye_onme
你得判断中文字符啊 不然会出现截取半个的情况

2006-8-11 14:39zjstandup
具体怎么弄呢

2006-8-11 14:47nj-racoon
:oops::oops:,搞定了,是偶搞错了,和sqlite无关,是ajax的问题,ajax get方式中文乱码:lol:

2007-1-26 15:23星之孩子
中文问题麻烦啊
数据库路径有中文不行
用LIKE函数时候 有中文也有问题

        sqlite3 * db;
        sqlite3_stmt * stmt;
        sqlite3_open ( "test.db3", &db );
        sqlite3_exec ( db, "create table t2 ( id int, name text)", NULL, NULL, NULL );
        sqlite3_exec ( db, "delete from t2", NULL, NULL, NULL );
        sqlite3_exec ( db, "replace into t2 values(1,'碟_版海鸥食堂.cd1.r_mvb')", NULL, NULL, NULL );
        sqlite3_exec ( db, "replace into t2 values(2,'碟_版海鸥食堂.cd1.r_mvb')", NULL, NULL, NULL );
        char * sql = "SELECT * FROM t2 WHERE name LIKE '%碟_版海%';";
       
        sqlite3_prepare ( db, sql, strlen ( sql), &stmt, NULL );
        while ( sqlite3_step ( stmt )==SQLITE_ROW ) {
                printf ( "ID:%d\tNAME:%s\n",
                        sqlite3_column_int ( stmt, 0 ),
                        sqlite3_column_text ( stmt, 1) );

        }
        sqlite3_finalize ( stmt );
        sqlite3_close ( db );
        return        0;

查询不出来
我发现是里面的中文中间的'_' 的问题

本篇来自:百家学院 (http://www.9php.com),转载请注明.

·看过 sqlite中文乱码,怎么解决? 文章的还看过:

·百家学院 | 最新评论·

评论内容:不能少于5个字,请自觉遵守互联网相关政策法规。

用户名: 验证码: 验证码,看不清楚?请点击刷新验证码