`

MySQL技术 创建数据库指定编码方式

阅读更多

现在utf-8编码方式应用越来越广泛,主要是原因应该受到当前国际化理念的驱动,像Wordpress就是完全用utf-8编码编码格式。在我一 次面试的时候遇到了相关问题,所以现在正在转向用utf-8编码。在刚开始的使用的时候,经常遇到各种编码问题,为了便于以后参考,在这里将一些要点罗列 一下。

 

1. MySQL数据库

MySQL(版本是5.1.22)支持多种编码格式,并且可以在多个级别上设置不同的编码格式。

  • 服务器级:在安装MySQL时可以设置服务器的默认编码格式
  • 数据库级:在创建数据库时可以指定数据库的编码格式,如果不指定,则默认继承服务器的编码格式。示例如下:
    CREATE DATABASE db_name DEFAULT CHARACTER SET utf8;
  • 表级:在MySQL中可以对同一个数据库中表指定不同的编码格式,如果不指定将继承数据库的编码格式。示例如下:
    CREATE TABLE  `db_name`.`tb_name` (
          id VARCHAR(20) NOT NULL,
         name VARCHAR(20)
    ) ENGINE=InnoDB  DEFAULT CHARSET=utf8;
  • 列级:另外还可以对同一个表中的不同列指定不同的编码格式,示例如下:
    CREATE TABLE  `db_name`.`tb_name` (
      id varchar(20) NOT NULL,
      name varchar(20) CHARACTER SET utf8
    );

关于MySQL支持字符集的更多信息,可以参考MySQL用户手册第九章Character Set Support。MySQL用户手册有在线版本,也有CHM版本,在Windows上安装MySQL时,会附带CHM版本。

示例如下:

 

CREATE TABLE IF NOT EXISTS `#@__member_snsmsg` (
    `id` INT( 10 ) UNSIGNED NOT NULL AUTO_INCREMENT ,
    `mid` MEDIUMINT( 8 ) UNSIGNED DEFAULT '0' NOT NULL ,
    `userid` VARCHAR( 20 ) NOT NULL ,
    `sendtime` INT( 10 ) UNSIGNED DEFAULT '0' NOT NULL ,
    `msg` VARCHAR( 250 ) NOT NULL ,
    PRIMARY KEY ( `id` )
) TYPE=MyISAM;

 

指定编码

CREATE TABLE IF NOT EXISTS `#@__member_snsmsg` (
    `id` INT( 10 ) UNSIGNED NOT NULL AUTO_INCREMENT ,
    `mid` MEDIUMINT( 8 ) UNSIGNED DEFAULT '0' NOT NULL ,
    `userid` VARCHAR( 20 ) NOT NULL ,
    `sendtime` INT( 10 ) UNSIGNED DEFAULT '0' NOT NULL ,
    `msg` VARCHAR( 250 ) NOT NULL ,
    PRIMARY KEY ( `id` )
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

分享到:
评论

相关推荐

    MySql修改数据库编码为UTF8避免造成乱码问题

    mysql 创建数据库时指定编码很重要,很多开发者都使用了默认编码,乱码问题可是防不胜防。制定数据库的编码可以很大程度上避免倒入导出带来的乱码问题。 网页数据一般采用UTF8编码,而数据库默认为latin 。我们可以...

    MySQL数据库系统.docx

    general_ci --with-extra-charsets=gbk,gb2312 --prefix:指定将mysql数据库程序安装到哪个目录 --with-charset:指定默认使用的字符集编码 --with-collation:指定默认使用的字符集校对规则 --with-extra-charset:...

    [详细完整版]2数据库.txt

    为了便于在命令提示符下显示中文, 在创建时通过 character set gbk 将数据库字符编码指定为 gbk。 创建成功时会得到 Query OK, 1 row affected(0.02 sec) 的响应。 注意: MySQL语句以分号(;)作为语句的结束, 若在...

    MySQL 5.1参考手册

    1.4. MySQL数据库管理系统概述 1.4.1. MySQL的历史 1.4.2. MySQL的的主要特性 1.4.3. MySQL稳定性 1.4.4. MySQL表最大能达到多少 1.4.5. 2000年兼容性 1.5. MaxDB数据库管理系统概述 1.5.1. 什么是MaxDB? 1.5.2. ...

    MySQL 5.1参考手册中文版

    1.4. MySQL数据库管理系统概述 1.4.1. MySQL的历史 1.4.2. MySQL的的主要特性 1.4.3. MySQL稳定性 1.4.4. MySQL表最大能达到多少 1.4.5. 2000年兼容性 1.5. MaxDB数据库管理系统概述 1.5.1. 什么是MaxDB? ...

    mysql5.1中文手册

    MySQL数据库管理系统概述 1.4.1. MySQL的历史 1.4.2. MySQL的的主要特性 1.4.3. MySQL稳定性 1.4.4. MySQL表最大能达到多少 1.4.5. 2000年兼容性 1.5. MaxDB数据库管理系统概述 1.5.1. 什么是...

    MYSQL中文手册

    1.4. MySQL数据库管理系统概述 1.4.1. MySQL的历史 1.4.2. MySQL的的主要特性 1.4.3. MySQL稳定性 1.4.4. MySQL表最大能达到多少 1.4.5. 2000年兼容性 1.5. MaxDB数据库管理系统概述 1.5.1. 什么是MaxDB? ...

    MySQL命令大全

    1、创建数据库 命令:create database <数据库名> 例如:建立一个名为xhkdb的数据库 mysql> create database xhkdb; 2、显示所有的数据库 命令:show databases (注意:最后有个s) mysql> show databases; ...

    MYSQL常用命令大全

    1、、创建数据库 命令:create database <数据库名> 例如:建立一个名为xhkdb的数据库 mysql> create database xhkdb; 2、显示所有的数据库 命令:show databases (注意:最后有个s) mysql> show databases; 3、...

    mysql官方中文参考手册

    1.4. MySQL数据库管理系统概述 1.4.1. MySQL的历史 1.4.2. MySQL的的主要特性 1.4.3. MySQL稳定性 1.4.4. MySQL表最大能达到多少 1.4.5. 2000年兼容性 1.5. MaxDB数据库管理系统概述 1.5.1. 什么是MaxDB? 1.5.2. ...

    mysql5.5.6安装教程及安装包.rar

    14、在打开的字符编码的页面中,设置mysql要使用的字符编码,第一个是西文编码,第二个是多字节的通用utf8编码,第三个是手动,我们选择utf-8或者是gbk,单击“next”,继续配置,如图所示: 15、在打开的页面中选择...

    MySQL5.1参考手册官方简体中文版

    北京万里开源软件有限公司在全国范围提供MySQL产品相关的商务及 技术方面的咨询与支持服务。垂询请致电:8610-65694500,或发送邮件至:sales@greatlinux.com. 本手册编译于2006-7-29,目录及索引由官方HTML文档...

    PHP程序开发范例宝典III

    6.10 动态创建数据库、数据表和字段 255 实例168 动态创建MySQL数据库 255 实例169 动态创建MySQL数据表 257 实例170 动态创建字段 259 实例171 动态创建一个完整的数据库 261 6.11 数据的导入导出 263 ...

    PHP开发实战1200例(第1卷).(清华出版.潘凯华.刘中华).part1

    实例013 安装MySQL数据库服务器 26 实例014 安装PHP.50 28 实例015 第4个PHP程序 30 1.5 XAMPP——Linux版PHP集成化安装包 31 实例016 XAMPP——Linux下PHP开发环境的集成化 31 实例017 Linux操作系统下启动XAMPP 32...

    PHP开发实战1200例(第1卷).(清华出版.潘凯华.刘中华).part2

    实例013 安装MySQL数据库服务器 26 实例014 安装PHP.50 28 实例015 第4个PHP程序 30 1.5 XAMPP——Linux版PHP集成化安装包 31 实例016 XAMPP——Linux下PHP开发环境的集成化 31 实例017 Linux操作系统下启动XAMPP 32...

    JDBC数据库操作乱码无缝过渡解决方案

    proxy.encoding= (可选)实际连接到的数据库所使用的编码,指定该参数后,所有的对于该数 据库的访问操作所产生或获得的字符串将被使用该编码进行转码,该动作是被多个代理程序包装, 并很好的隐藏的,你不必...

    windows环境下mysql的解压安装及备份和还原

    # 服务端的编码方式 character_set_server=utf8 # These are commonly set, remove the # and set as required. #数据文件存放目录 basedir = C:\Program Files\mysql #数据文件存放目录 datadir = C:\Program Files...

    基于python编写的代码变更覆盖率平台+源代码+文档说明

    1.安装mysql数据库服务端,并设置为utf-8编码,创建相应difftest数据库,设置好相应用户名、密码,启动mysql 2.修改:DiffTestPlatform/DiffTestPlatform/setting.py里DATABASE的配置 ``` DATABASES = { 'default'...

Global site tag (gtag.js) - Google Analytics