-
mysql的保存中文乱码的情况如下:(1)网站本身的编码。看看设置对了没,比如我设置的UTF-8就检查下编码是不是UTF-8。(一般通过文件右击属性来看,或建立工程的时候来统一设置)
public static String driverName = "com.mysql.jdbc.Driver";
public static String userName = "root";
public static String userPasswd = "123456";
public static String dbName = "myBook";
public static String url = "jdbc:mysql://localhost/" + dbName + "?user="
+ userName + "&password=" + userPasswd
+ "&useUnicode=true&characterEncoding=GBK";............................Class.forName(driverName).newInstance();
connection = (Connection) DriverManager.getConnection(url);....一般都是在这里搞错而出现了mysql乱码。mysql编码设置可以分为三种设置:数据库的编码、表的编码、和字段的编码。a、数据库的编码:在sqlyog工具中操作把,右击数据库点击更改数据库,如图
b、表的编码:
mysql很扯淡的是,表级别也设置了编码,说说咋设置把。
右击要修改编码的表,点击更改表如上图,点了以后如下图:
c、字段的编码:mysql字段都有编码设置,还是上面的更改表,不过不点高级属性了。看图:
最后再出一个绝招:SHOW CREATE TABLE 表名CREATE TABLE `wen` (
`id` int(8) DEFAULT NULL,
`bookid` int(8) DEFAULT NULL,
`title` varchar(200) COLLATE gbk_bin DEFAULT NULL,
`content` longtext COLLATE gbk_bin
) ENGINE=InnoDB DEFAULT CHARSET=gbk COLLATE=gbk_bin CHECKSUM=1 DELAY_KEY_WRITE=1 ROW_FORMAT=DYNAMIC
转载于:https://blog.51cto.com/4610383/1248293