Mysql #1366 无法插入中文解决办法(ubuntu,mysql5.7) php中文变量值为???的解决
来源:互联网 发布:数据集市 编辑:程序博客网 时间:2024/06/08 19:57
数据表插入不了中文,折腾了1个小时,终于找到错误所在。
首先设置数据库的默认字符集 :
打开终端,输入 mysql -uroot -p ,输入密码,进入mysql命令行
输入 status; 查看当前字符集状态,我的终端上显示如下内容:
------------------------------------------------------------
Current database: order_movie_ticket
Server characterset: utf8
Db characterset: utf8
Client characterset: gbk
Conn. characterset: gbk
-------------------------------------------------------------
发现字符集不统一,因此需要强制修改数据库的默认字符集为utf8
ALTER DATABASE `db_name` DEFAULT CHARACTER SET utf8
修改成功后,返回终端,输入 service mysql restart ,重启mysql 服务
发现原本的数据表还是不支持插入中文,但是新建的数据表却可以插入中文。
原来之前存在的数据表的字符集仍未被修改
于是想到一个办法,重新创建一次数据表。
先将原本的数据表导出,然后删除原数据表
修改.sql文件,将数据表的CREATE语句末尾改成 ENGINE=InnoDB DEFAULT CHARSET=utf8;
之后重新导入sql文件,重新创建的数据表就可以插入中文了!
----------ps:
后来发现,php获取了mysql变量后,输出的中文字符串是????
原因:mysql与php变量的中文编码格式存在差距,因此在每次查询前要加入:
$conn->query("set names utf8"); //设置query的字符格式为utf8
- Mysql #1366 无法插入中文解决办法(ubuntu,mysql5.7) php中文变量值为???的解决
- 解决php无法向Mysql插入中文的问题
- php mysql不能插入中文的解决办法
- mysql中文乱码,无法插入中文的解决办法总结
- mysql中文乱码,无法插入中文的解决办法总结
- Mysql 无法插入中文,中文乱码解决
- ubuntu下解决mysql插入中文乱码(???)的问题
- 无法通过PHP向MySQL数据库表中插入中文数据问题的解决办法
- mysql插入变量值
- Android笔记--解决使用php文件插入数据到mysql数据库的表中中文变问号的问题
- php 链接sqlserver 中文无法插入的解决
- 解决mysql5.6无法显示和插入中文(mac/linux)
- PHP-MySQL不能插入中文解决办法
- mysql中解决中文无法插入的问题
- 解决mysql数据库中无法插入中文数据的问题
- 关于解决mysql workbench无法插入中文的问题
- 解决mysql数据库无法插入中文的问题
- 关于MySql中文变?的解决办法。
- 八皇后问题(回溯)
- L2-017. 人以群分
- Mybatis 入门
- html5多样的输入类型和风格
- 解决:springboot生成jar运行没有主清单属性
- Mysql #1366 无法插入中文解决办法(ubuntu,mysql5.7) php中文变量值为???的解决
- h5的部分新增标签
- Linux学习笔记-bash(鸟哥11章 老段视频笔记)
- Python 2.7.x 和 3.x 版本的重要区别小结
- javaWeb 项目Http转Https
- 第五周
- c 给字符串赋值
- Linux 下如何安装 zookeeper
- 划分硬盘分区