【mysql】 数据库字符集和排序规则

摘要:
库的字符集影响表和字段的字符集数据库字符集》表的字符集》字段的字符集(从前往后优先级由低到高,从左往右继承,如果表没设置字符集,继承数据库的,如果字段没设置,继承表的)数据库的字符集如果是utf8,表和字段的字符集继承字段的字符集和排序规则继承自表,例如表的字符集为latin1,那表的字段(字符型)都是latin1修改表的字符集对新增加字段有用,但是老字段字符集不变,应再编写脚本修改老数据的字符集

库的字符集影响表和字段的字符集

  • 数据库字符集 》表的字符集 》 字段的字符集 (从前往后优先级由低到高,从左往右继承,如果表没设置字符集,继承数据库的,如果字段没设置,继承表的)
  • 数据库的字符集如果是utf8,表和字段的字符集继承
  • 字段的字符集和排序规则继承自表,例如表的字符集为latin1,那表的字段(字符型)都是latin1
  • 修改表的字符集对新增加字段有用,但是老字段字符集不变,应再编写脚本修改老数据的字符集
  • show variableslike "%char%" ;显示 character_set_database 为 latin1,如果想显示utf8,应该修改所有数据库的默认字符集为utf8
--- 修改数据库字符集和排序规则
alter database xc  character set utf8 collate utf8_general_ci;
--- 查看数据库的字符集
select * from information_schema.schemata where schema_name = 'db_name';
--- 修改表默认的字符集
alter table table_name character set gbk collate gbk_bin;
--- 修改表数据的字符集
alter table table_name convert to character set gbk collate gbk_bin; 
--- 查看表的字符集
select * from information_schema.tables where table_schema = 'db_name' and table_name = 'table_name';
--- 修改字段的字符集
alter table table_name change column_name varchar(50) character set gbk collate gbk_bin;
--- 查看字段的字符集
select * from information_schema.columns where table_schema = 'db_name' and table_name = 'table_name';

如需引用,请注明来源

免责声明:文章转载自《【mysql】 数据库字符集和排序规则》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇PHP中文乱码的常见解决方法总结Qt之OpenSSL下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

安装mariadb

 安装mariadb有两个源,一个是阿里云的yum源,可能版本较低,软件包很小,功能很少 二个是mariadb官方的yum源,配置方式 在/etc/yum.repos.d目录下,建立一个repo文件就是yum仓库 #创建一个mariadb.repo文件,写入以下内容 [mariadb] name = MariaDB baseurl = http://yum...

php并发控制 , 乐观锁

由于悲观锁在开始读取时即开始锁定,因此在并发访问较大的情况下性能会变差。对MySQL Inodb来说,通过指定明确主键方式查找数据会单行锁定,而查询范围操作或者非主键操作将会锁表。 接下来,我们看一下如何使用乐观锁解决这个问题。 MYSQL 首先我们为counter表增加一列update_time字段,当进行操作时,将先前读取的update_time与当时...

解决ArcGIS中因SDE或数据库配置问题而导致服务宕掉的一种思路

文章版权由作者李晓晖和博客园共有,若转载请于明显处标明出处:http://www.cnblogs.com/naaoveGIS/。 1.背景 最近连续有两个项目现场出现了AGS服务荡掉的问题,一个是通州现场,一个是福州现场。 1.1通州现场的问题描述和解决思路 通州现场环境为ArcGIS9.2,使用IMS发布的地图服务,其问题表现为每隔两天左右,其地形图服务...

Oracle12c 性能优化攻略:攻略1-1:创建具有最优性能的数据库

一:章节前言 本章着眼于影响表中数据存储性能的数据库特性。 表的性能部分取决于在创建之前所应用的数据库特性。例如:在最初创建数据库时采用的物理存储特性以及相关的表空间都会在后来影响表的性能。类似地,表性能还受到最开始选择的物理特性的影响。例如:表类型和数据类型。 因此应用实践中使用的数据库、表空间、和表的创建标准(并将性能问题放在心上),就形成了优化数据...

使用Hibernate

1、Hibernate框架设计原理 1)设计原理 Hibernate采用ORM思想对JDBC进行封装,Hibernate框架是ORM思想的一种实现,解决对象和数据库数据映射问题 Hibernate提供一系列API,允许我们直接访问实体对象,然后根据ORM映射关系,转换成SQL去执行,从而达到访问数据库的目的。 2)ORM思想 ORM(ObjectRela...

SqlServer 数据库读写分离【转】

1. 实现原理:读写分离简单的说是把对数据库读和写的操作分开对应不同的数据库服务器,这样能有效地减轻数据库压力,也能减轻io压力。主数据库提供写操作,从数据库提供读操作,其实在很多系统中,主要是读的操作。当主数据库进行写操作时,数据要同步到从的数据库,这样才能有效保证数据库完整性。 2. 实现方法:在MS Sql server中可以使用发布定义的方式实...