mysql乱码

net start mysql
net stop mysql
mysql -u root -p

create database dbname charset
create table student(
name varchar(20),
age int
)
insert into student values('aaa',22);
insert into student values('bbb',33);
insert into student values('ccc',44);
insert into student values('张三',24);

SHOW VARIABLES LIKE 'character_set_%';

以utf-8格式编码为例:
1.jsp页面编码设置
<%@page pageEncoding="utf-8" contentType="text/html; charset=utf-8"%>
<html>
<head>
<meta http-equiv=Content-Type content="text/html; charset=utf-8" />
</head>
</html>
2.servlet编码设置:
request.setCharacterEncoding("UTF-8");
response.setContentType("text/html;charset=UTF-8");
3.数据库编码设置
(1)创建数据库时要先设置成utf-8格式,下面主要以mysql为例来说明这个问题:
create database db default character set utf8(注意是utf8,不是utf-8)
在插入数据的时候,尤其是中文,要注意,
用status命令查看client characterset是什么编码的,如果是utf8的话,直接插中文是插不进去的,必须用一个set names gbk;命令,才可以确保插成功
(2)在java程序端创建连接时,url设置成
jdbc:mysql://localhost:3306/db?useUnicode=true&characterEncoding=utf8
可以写一个DAO,测试一下是否能插入正确的数据,显示正确的数据。如果中文显示?,有可能你用的jar包有问题,确保它是版本5的,我曾经用的版本3,出来就是?。千万要注意一下。
如果上面的步骤都严格执行的话,应该是没什么问题的了。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值