首先,推荐一篇博客:http://www.cnblogs.com/sunzn/archive/2013/03/14/2960248.htmlhtml
当时,我安装完mysql数据库后,新建一个数据库后插入数据,首先出现了中文不能插入mysql数据库的问题,解决办法以下: mysql
修改mysql文件中my.ini里的 sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"变成sql-mode="NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION",修改完后,重启mysql服务,便可解决中文没法插入的问题。sql
接下来,可能会发现插入的中文出现了乱码问题,那么解决的办法就是,修改my.ini文件中 character-set-server=utf8和 character-set-server=utf8这两句,若是不是utf8就所有修改为utf8格式,这样再次重启mysql服务便可解决插入中文乱码的问题。(PS:这里又会出现一个新问题,那就是在以前已经建立的数据库,此时插入中文可能也会出现中文乱码,解决的办法就是删除原来建立的数据库,从新建立一个如出一辙的数据库,就不会出现插入中文乱码的问题啦)数据库
具体修改完后的my.ini文件以下(此处是我本身的mysql中my.ini文件,仅做参考哦):socket
####################配置文件开始################### # For advice on how to change settings please see # http://dev.mysql.com/doc/refman/5.7/en/server-configuration-defaults.html # *** DO NOT EDIT THIS FILE. It's a template which will be copied to the # *** default location during install, and will be replaced if you # *** upgrade to a newer version of MySQL. [client] default-character-set=utf8 [mysqld] character-set-server=utf8 port=3306 basedir ="F:\mysql/" datadir ="F:\mysql/data/" tmpdir ="F:\mysql/data/" socket ="F:\mysql/data/mysql.sock" log-error="F:\mysql/data/mysql_error.log" #server_id = 2 #skip-locking max_connections=100 table_open_cache=256 query_cache_size=1M tmp_table_size=32M thread_cache_size=8 innodb_data_home_dir="F:\mysql/data/" innodb_flush_log_at_trx_commit =1 innodb_log_buffer_size=128M innodb_buffer_pool_size=128M innodb_log_file_size=10M innodb_thread_concurrency=16 innodb-autoextend-increment=1000 join_buffer_size = 128M sort_buffer_size = 32M read_rnd_buffer_size = 32M max_allowed_packet = 32M explicit_defaults_for_timestamp=true sql-mode="NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION" #sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES ####################配置文件结束###################