我租了个空间,在他的管理页面上建了一个mysql的数据库,建库时只让设置了用户的密码和库名,其它都没让设,建好后
在库里建了1个表,建库脚本如下,用phpMyAdmin插入中文是正常的,但用页面读出来就是乱码,请问这个需要改什么呢?
我从phpMyAdmin的默认页面看到的是:
------------------------------------
服务器版本: 4.1.20
Protocol version: 10
服务器: Localhost via UNIX socket
MySQL 字符集: cp1252 West European (latin1) //会不会是这里的问题?(这个是不是空间里提供的MySql的默认字符集?我没找到修改的地方)
MySQL 连接校对: 整理 utf8_general_ci //这里设为这个有没有问题,因为在本地Collection我都是不选的(用mysql-front客户端)
创建一个新的数据库: 无权限
-------------------------------------
下面是建表的脚本:
CREATE TABLE `userinfo` (
`id` int(11) NOT NULL auto_increment,
`UserName` varchar(100) NOT NULL,
`Psw` varchar(30) NOT NULL,
`RealName` varchar(30) NOT NULL,
`CreatTime` date default NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='用户信息表';
--------------------------------------
建表的时候指定了charset为utf8
我是第1次在租用的空间上搞mysql,所以也不知道咋回事,原来在本地或自己部署的环境时,只要建库时用utf-8,建表时默认就是utf-8,页面上读取时再用utf-8,中文就没有问题
谢谢!
在库里建了1个表,建库脚本如下,用phpMyAdmin插入中文是正常的,但用页面读出来就是乱码,请问这个需要改什么呢?
我从phpMyAdmin的默认页面看到的是:
------------------------------------
服务器版本: 4.1.20
Protocol version: 10
服务器: Localhost via UNIX socket
MySQL 字符集: cp1252 West European (latin1) //会不会是这里的问题?(这个是不是空间里提供的MySql的默认字符集?我没找到修改的地方)
MySQL 连接校对: 整理 utf8_general_ci //这里设为这个有没有问题,因为在本地Collection我都是不选的(用mysql-front客户端)
创建一个新的数据库: 无权限
-------------------------------------
下面是建表的脚本:
CREATE TABLE `userinfo` (
`id` int(11) NOT NULL auto_increment,
`UserName` varchar(100) NOT NULL,
`Psw` varchar(30) NOT NULL,
`RealName` varchar(30) NOT NULL,
`CreatTime` date default NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='用户信息表';
--------------------------------------
建表的时候指定了charset为utf8
我是第1次在租用的空间上搞mysql,所以也不知道咋回事,原来在本地或自己部署的环境时,只要建库时用utf-8,建表时默认就是utf-8,页面上读取时再用utf-8,中文就没有问题
谢谢!
set names utf8;
下面我给出你在建库脚本必须要加的:
CREATE DATABASE `xxx`
CHARACTER SET 'utf8'
COLLATE 'utf8_bin';否则你的表,形如你的:CREATE TABLE `userinfo` (
`id` int(11) NOT NULL auto_increment,
`UserName` varchar(100) NOT NULL,
`Psw` varchar(30) NOT NULL,
`RealName` varchar(30) NOT NULL,
`CreatTime` date default NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='用户信息表';
虽然表已制定utf-8,但你的库存取数据却是你库默认的"latin1",而不是utf-8.