关于thinkPHP 往数据库里插入中文变问号的问题.....Navicat-大坑

来源:互联网 发布:武汉家装哪家好 知乎 编辑:程序博客网 时间:2024/06/07 16:23

做毕设的时候,用thinkPHP,功能实现一个用户数据的插入.
测试插入时,打开navcat,发现中国全部被替换成了问号.

于是做了以下几件事.

1.进入linux, 修改mysql的配置文件.添加字符集配置.
这里写图片描述

2.运行mysql命令, 把所有数据库和表的字符集改成utf8.

3.查看phpstrom编辑器的字符集,发现默认就是utf-8.

4.在项目的数据库配置文件上添加操作数据时的配置.
‘DB_CHARSET’=> ‘utf8’, // 字符集

5.尝试插入,发现所有中文还是变成了问号.

6.无奈之下把整个数据库转存为sql文件.

7.删除原来的数据库.

8.新建同名数据库,然后运行sql文件.

然后奇怪的事情发生了, 插入数据的时候依旧是问号,
但是获取数据却变回了中文.

= = 最后经朋友提醒,要把navicat下的 ‘使用Mysql字符集’选项勾上.

1.断开数据库连接.

2.查看连接属性.

3.修改选项.

4.重新连接.

这里写图片描述

…….问题解决

其实,当出现 插入时中文变问号, 但是取出时又正常,这时候真实的mysql应该是存储正确的. 问题就出在navicat这个软件上….

然而就是这个问题浪费了我一晚上时间,记录一下.

以上.

0 0
原创粉丝点击