Home >Backend Development >PHP Tutorial >mysql表改了编码,语句执行就报错

mysql表改了编码,语句执行就报错

WBOY
WBOYOriginal
2016-06-23 14:21:34930browse

我把表格和字段的编码由utf8_general_ci改成utf8_unicode_ci,就报错
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /var/www/html/amazonnew/function/sale_import.class.php on line 29


另一个问题,什么编码比较适合保存各国语言??


回复讨论(解决方案)

为什么要改?

utf8_general_ci 已经足够了

utf8_general_ci已经适合各国语言了!至少日语,英文,简体中文,繁体中文都适用

如果想保存mysql不支持的内容,可以做json encode来存储,取得时候decode。

报错可能不是因为编码问题。 你输出下 mysql_error() 函数返回的内容。看具体是什么错误?

 Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /var/www/html/amazonnew/function/sale_import.class.php on line 29

这个错误信息是因为查询sql执行失败导致的。

贴出你29行代码

现在没报错了,谢谢各位!

还有个问题,就是第二个问题
utf8_general_ci编码能支持全世界主要语言吗?

我是要存日文,法文,英文,德文,简体,繁体,印度文,还有欧洲一些语言!

现在习惯用utf8_general_ci了,一般创建数据库一般选得就是这个,不过对于你所要求的德文等等的支持还是弱于utf8_unicode_ci

用utf8_general_ci了,一般创建数据库就选这个

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn