在mysql的控制台,默认情况下是无法插入汉字。
公司主营业务:成都网站建设、网站建设、移动网站开发等业务。帮助企业客户真正实现互联网宣传,提高企业的竞争能力。成都创新互联公司是一支青春激扬、勤奋敬业、活力青春激扬、勤奋敬业、活力澎湃、和谐高效的团队。公司秉承以“开放、自由、严谨、自律”为核心的企业文化,感谢他们对我们的高要求,感谢他们从不同领域给我们带来的挑战,让我们激情的团队有机会用头脑与智慧不断的给客户带来惊喜。成都创新互联公司推出贺州免费做网站回馈大家。
你可以在mysql的控制台执行 set names gbk;
然后再插入数据看看,如果这样还不行的话,最好把sql语句放到一个文本文件中,然后在控制台中执行
source xxxx.sql;
这样应该是没有问题的
说明拼写出现错误。以错误拼写为例讲解mysql数据库出现错误代码1064的情况:
1、输入如图所示的SQL语句。
2、会看到有error错误信息提示 如图大致意思就是第一行这句SQL语句有语法错误。
3、仔细阅读语句会看到select这个拼写错。
4、where拼写错,修改即可。
在使用mysql是在navicat中查询一条简单语句使用了 select * from table 虽然查询成功了,但是报了
[Err] 1055 - Expression #1 of ORDER BY clause is not in GROUP BY clause and contains nonaggregated column 'information_schema.PROFILING.SEQ' which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by 错误.
在MySQL5.7之后,sql_mode中默认存在ONLY_FULL_GROUP_BY,SQL语句未通过ONLY_FULL_GROUP_BY语义检查所以报错。
ONLY_FULL_GROUP_BY模式要求select语句中查询出来的列必须是明确的(其他语句也是一样)。
以SQL语句 select columes from table group by list 为例:columns必须是聚集函数或者在group by后的表达式list中,并且list中必须包含主键,否则也会报错。
insert、update、delete语句都会报错(但不影响SQL语句的执行),因为这三种语句执行之前也会执行查询操作。
以主键为id的表为例:
执行sql语句使sql_mode的模式去掉ONLY_FULL_GROUP_BY,但是重启服务会失效
注意: 在ubuntu 18中的mysql配置文件需要修改 mysqld.cnf , 其他系统的其他mysql版本需要根据特定情况查找需要修改的配置文件,如:windows中一般是 my.ini ,linux中可能是 my.cnf
在[mysqld]下面增加如下内容
验证: 再次在navicat中 select * from table 查询,已没有错误.
右键单击“mysql”的“dos窗口”上面的 蓝色横条 选择编辑-标记-然后按住鼠标左键选中你要修改的语句 再去右击蓝色横条 选择编辑-复制就把这条你要修改的语句复制到剪贴板了 然后去记事本里粘贴修改! 在记事本里写好命令复制 然后右键单点“mysql”的“dos窗口”上面的 蓝色横条 编辑-粘贴 然后执行 当然这只是windows下的办法,要一次执行很多行代码的时候比较省事~