create table books(
id int not null primary key,
title varchar(50) not null,
author varchar(50) not null,
bookpub varchar(50) not null,
pub_date date not null,
price float(4,2) not null,
amount int,
re varchar(100));
set names gbk;insert into books values (1,'Java基础','张三','人民出版社','2013-1-1',40.00,100,null);
insert into books values (2,'JSP基础','张三','人民出版社','2013-1-1',40.00,100,null);
insert into books values (3,'Servlet基础','张三','人民出版社','2013-1-1',40.00,100,null);
insert into books values (4,'C基础','张三','人民出版社','2013-1-1',40.00,100,null);
insert into books values (5,'安卓基础','张三','人民出版社','2013-1-1',40.00,100,null);
insert into books values (6,'servlet基础','张三','人民出版社','2013-1-1',40.00,100,null);
报错,我把汉字改成数字或字母就可以

解决方案 »

  1.   

    show variables like 'char%'; 
    贴结果
      

  2.   

    select前执行set name gbk; 或者set names utf8;都试试
      

  3.   

    Mysql是安装windows下:
    找到mysql安装目录如:MySQL\MySQL Server 5.5 ,打开文件my.ini配置文件,
    找到default-character-set=latin1 并改为:default-character-set=gbk,
    找到character-set-server=latin1 并改为:character-set-server=gbk,修改完之后保存。
    然后重启mysqlLinux环境下:
    参考如何修正Linux下面MySQL中文乱码问题 
      

  4.   

    还是字符集的问题的。
    mysql默认字符集default-character-set='gbk'
    show variables like 'char%';
      

  5.   

    你可以在创建数据库时,设置相关字符集为GBK ,
     CREATE DATABASE  `databasename` DEFAULT  CHARACTER SET gbk COLLATE gbk_chinese_ci
    建议数据库字符集不建议使用GBK或GB2312 ,因为有一些生僻字字符集不支持,比如说 “喆”,“鹮”等GB2312字符集就不支持。