大橙子网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
插入的数据乱码有很多原因:
成都创新互联公司凭借专业的设计团队扎实的技术支持、优质高效的服务意识和丰厚的资源优势,提供专业的网站策划、成都网站建设、成都网站设计、网站优化、软件开发、网站改版等服务,在成都十年的网站建设设计经验,为成都上千家中小型企业策划设计了网站。
1、你要检查一下页面的编码和数据库设置的字符集是否一样,要么都是utf8,要么都是gbk的
2、如果第一点说的两边编码是统一的,你可以在链接数据库的时候加上mysql_query("set
names
utf8")
3、加上之后还是不行的话,在检查你的页面编码,如果是utf8的话,请选择没有bom的utf8编码
4、以上都没问题的话,还出现乱码的话,修改mysql的配置文件,my.ini加上character-set-server=utf8,然后重启mysql服务就可以了
一般出现乱码的话,基本就是这些原因了
你也可以用下面的语句修改下一个起始值和步进值:
alter
table
tblorder
alter
column
orderid
counter
(2000,
50)
要重新开始:
alter
table
tablename
alter
column
orderid
counter
(1,
1)
1、 编辑MySql的配置文件
MySql的配置文件Windows下一般在系统目录下或者在MySql的安装目录下名字叫my.ini,可以搜索,Linux下一般是/etc/my.cnf
--在 [mysqld] 标签下加上以下内容:
default-character-set = utf8
character_set_server = utf8
注意:如果此标签下已经存在“default-character-set=GBK”类似的内容,只需修改即可。
--在 [mysql] 标签下加上一行
default-character-set = utf8
--在 [mysql.server]标签下加上一行
default-character-set = utf8
--在 [mysqld_safe]标签下加上一行
default-character-set = utf8
--在 [client]标签下加上一行
default-character-set = utf8
2、 重新启动MySql服务
Windows可在服务管理器中操作,也可使用命令行:
net stop mysql 回车
net start mysql 回车
服务名可能不一定为mysql,请按自己的设置
Linux下面可是用 service mysql restart
如果出现启动失败,请检查配置文件有没有设置错误
3、 查看设置结果
登录MySql命令行客户端:打开命令行
mysql –uroot –p 回车
输入密码
进入mysql后 执行 :show variables like "% character %";
显示结果应该类似如下:
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_results | utf8 |
| character_set_server | utf8 |
| character_set_system | utf8 |
| character_sets_dir | /usr/share/mysql/charsets/ |
如果仍有编码不是utf8的,请检查配置文件,也可使用mysql命令设置:
set character_set_client = utf8;
set character_set_server = utf8;
set character_set_connection = utf8;
set character_set_database = utf8;
set character_set_results = utf8;
set collation_connection = utf8_general_ci;
set collation_database = utf8_general_ci;
set collation_server = utf8_general_ci;
另外:
建立数据库时可以使用以下命令:
create database app_relation character set utf8;
use app_relation;
source app_relation.sql;
修改数据库编码的命令为:
alter database app_relation character set utf8;
通过show
variables
like
'character_set%%';查看编码
修改mysql的编码方式可以有以下几个:
1.通过配置文件修改my.ini(windows下)或/etc/my.cnf(linux下)
分别添加如下内容
[mysqld]
character_server_set=utf8
[mysql]
default-character-set=utf8
[mysql.server]
default-character-set=utf8
[mysql_safe]
default-character-set=utf8
[client]
default-character-set=utf8
2.创建数据库时设置编码
create
database
test
character
set
utf8;
3.创建表时设置编码
create
table
test(id
int
primary
key)DEFAULT
charset=utf8;
4.修改数据库编码
alter
database
test
character
set
utf8;
5.修改表默认编码
alter
table
test
character
set
utf8;
6.修改字段编码
alter
table
test
modify
col_name
varchar(50)
CHARACTER
SET
utf8;
以上所述是小编给大家介绍的MySQL字符编码设置方法,希望对大家有所帮助!
如果有
phpmyadmin
的话,可以直接在建表的时候,有个“额外”这个选项,点击进入,选中AUTO_INCREMENT
如果不能的话,则用php页面创建表的时候,在
sql语句
插入$sql="create
table
$table_name(id
varchar(4)
not
null
primary
key
auto_increment";再执行就可以了
需要说明的是,这个字段不是必须填入的~
1、更改服务器的编码方式,在终端输入以下命令:
mysqld --character-set-server=gbk --collation-server=gbk_chinese_ci;
2、更改某个数据库的编码方式
mysql -u root -p
alter database character set gbk collate gbk_chinese_ci;
3、在创建数据库时指定编码:
mysql -u root -p
create database db_name character set gbk collate gbk_chinese_ci;
4、更改某个表的编码方式
mysql -u root -p db_name
alter table table_name convert to charachter set gbk collate gbk_chinese_ci;
5、在创建表时指定编码方式
mysql -u root -p db_name
create table table_name (....) character set gbk collate gbk_chinese_ci;
6、更改某行的编码方式
mysql -u root -p db_name
alter table table_name modify column_name varchar(20) character set gbk collate gbk_chinese_ci;
7、在创建列时指定编码方式:
/prepre name="code" class="sql"mysql -u root -p db_name
create table table_name (..., col1 varchar(20) character set gbk collate gbk_chinese_ci, ...) character set utf8 collate utf8_general_ci;