原来采用的是mysql-5.5.28安装版,为了能够改善部分电脑安装不顺利的问题,下载了mysql-5.6.12-win32.zip版。目前能够正常启动,也能够把原数据库的数据和存储过程导入。
现在遇到的问题就是通过存储过程输入中文就提示错误,直接insert语句能够插入中文。
mysql> insert into tb_office value (1,'营业点1');
Query OK, 1 row affected (0.05 sec)mysql> select * from tb_office;
+-----------+---------+
| OFFICE_ID | office |
+-----------+---------+
| 1 | 营业点1 |
+-----------+---------+
1 row in set (0.00 sec)mysql> call inserttboffice(2,'营业点2');
ERROR 1366 (HY000): Incorrect string value: '\xD3\xAA\xD2\xB5\xB5\xE3...' for co
lumn 'p_office' at row 2
mysql> show create procedure inserttboffice;
+----------------+--------------------------------------------------------------
--+-----------------------------------------------------------------------------
--------------------------------------------------------------------------------
----------------------------------------+----------------------+----------------
------+--------------------+
| Procedure | sql_mode
| Create Procedure | character_set_client | collation_conne
ction | Database Collation |
+----------------+--------------------------------------------------------------
--+-----------------------------------------------------------------------------
--------------------------------------------------------------------------------
----------------------------------------+----------------------+----------------
------+--------------------+
| inserttboffice | STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTIO
N | CREATE DEFINER=`root`@`127.0.0.1` PROCEDURE `inserttboffice`(p_officeid SMAL
LINT UNSIGNED, p_office VARCHAR(20))
BEGIN
INSERT INTO TB_OFFICE ( OFFICE_ID,OFFICE ) VALUES (p_officeid,p_office);
END | utf8 | utf8_general_ci | latin1_swedish_ci |
+----------------+--------------------------------------------------------------
--+-----------------------------------------------------------------------------
--------------------------------------------------------------------------------
----------------------------------------+----------------------+----------------
------+--------------------+
1 row in set (0.00 sec)
谢谢大家帮忙
现在遇到的问题就是通过存储过程输入中文就提示错误,直接insert语句能够插入中文。
mysql> insert into tb_office value (1,'营业点1');
Query OK, 1 row affected (0.05 sec)mysql> select * from tb_office;
+-----------+---------+
| OFFICE_ID | office |
+-----------+---------+
| 1 | 营业点1 |
+-----------+---------+
1 row in set (0.00 sec)mysql> call inserttboffice(2,'营业点2');
ERROR 1366 (HY000): Incorrect string value: '\xD3\xAA\xD2\xB5\xB5\xE3...' for co
lumn 'p_office' at row 2
mysql> show create procedure inserttboffice;
+----------------+--------------------------------------------------------------
--+-----------------------------------------------------------------------------
--------------------------------------------------------------------------------
----------------------------------------+----------------------+----------------
------+--------------------+
| Procedure | sql_mode
| Create Procedure | character_set_client | collation_conne
ction | Database Collation |
+----------------+--------------------------------------------------------------
--+-----------------------------------------------------------------------------
--------------------------------------------------------------------------------
----------------------------------------+----------------------+----------------
------+--------------------+
| inserttboffice | STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTIO
N | CREATE DEFINER=`root`@`127.0.0.1` PROCEDURE `inserttboffice`(p_officeid SMAL
LINT UNSIGNED, p_office VARCHAR(20))
BEGIN
INSERT INTO TB_OFFICE ( OFFICE_ID,OFFICE ) VALUES (p_officeid,p_office);
END | utf8 | utf8_general_ci | latin1_swedish_ci |
+----------------+--------------------------------------------------------------
--+-----------------------------------------------------------------------------
--------------------------------------------------------------------------------
----------------------------------------+----------------------+----------------
------+--------------------+
1 row in set (0.00 sec)
谢谢大家帮忙
解决方案 »
- mysql主键问题
- mysql 语句
- 配置my.cnf 如何使查询速度更快
- MysqlCC不能显示中文的问题。
- 关于linux下php不能连接mysql的问题
- 请问: mysql的数据库在windows2000的服务器如何配置?
- 我在linux下安装了mysql后,不能启动,(我这个问题情况特殊,和其他的不能启动的问题好象不同,请斑竹高抬贵手)
- 一个月内分时间段查询数据的和
- 请高人给指点mysql的存储过程 php代码转换
- load data infile 't2.txt' into table trouble2;耗时5个小时了,还没导入成功。请问怎么能提速呢?
- 求写批量改值的SQL语句
- mysql update 和硬盘关系
MySQL 中文显示乱码
这个配置内容也是我们站内其它帖子上找到,好像是ACMAIN_CHM版主的,做了一点添加。
解决的方法就是设置下面两个utf8,贴出相应的内容
------------------------------------------------------
[client]
default-character-set=utf8 # pipe
# socket=mysql
port=3306 [mysql] default-character-set=utf8
----------------------------------