MYSQL引擎與字符設置

當年創建一個新表的時候,你可以通過添加一個ENGINE 或TYPE 選項到CREATE TABLE語句來告訴MySQL你要創建什麼類型的表:

CREATE TABLE t (i INT) ENGINE = INNODB;

CREATE TABLE t (i INT) TYPE = MEMORY;

要把一個表從一個類型轉到另一個類型,可使用ALTER TABLE語句,這個語句指明新的類型:

ALTER TABLE t ENGINE = MYISAM;

ALTER TABLE t TYPE = BDB;



mysql 建表字符集

1.列出MYSQL支持的所有字符集:
SHOW CHARACTER SET;

2.當前MYSQL服務器字符集設置
SHOW VARIABLES LIKE 'character_set_%';

3.當前MYSQL服務器字符集校驗設置
SHOW VARIABLES LIKE 'collation_%';

4.顯示某數據庫字符集設置
show create database 數據庫名;

5.顯示某數據表字符集設置
show create table 表名;

6.修改數據庫字符集
alter database 數據庫名 default character set 'utf8';

7.修改數據表字符集
alter table 表名 default character set 'utf8';

8.建庫時指定字符集
create database 數據庫名 character set gbk collate gbk_chinese_ci;

9.建表時指定字符集
CREATE TABLE `mysqlcode` (
`id` TINYINT( 255 ) UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY ,
`content` VARCHAR( 255 ) NOT NULL
) TYPE = MYISAM CHARACTER SET gbk COLLATE gbk_chinese_ci;

庫字符集,在my.cnf中缺少了如下代碼:
[client]
default-character-set=utf8
[mysqld]
default-character-set=utf8

10.修改數據庫的字符集
   mysql>use mydb
   mysql>alter database mydb character set utf-8;

創建數據庫指定數據庫的字符集
   mysql>create database mydb character set utf-8;

通過配置文件修改:

修改/var/lib/mysql/mydb/db.opt
default-character-set=latin1
default-collation=latin1_swedish_ci

default-character-set=utf8
default-collation=utf8_general_ci

 

11.MySQL服務器能夠支持多種字符集。可以使用SHOW CHARACTER SET語句列出可用的字符集:

mysql> SHOW CHARACTER SET;


如果不加以上代碼,那麼即便MYSQL編譯安裝時指定的編碼是UTF8,那麼在建庫時其默認編碼仍是LATIN1,而由於字符集的繼承性,庫中的表也是LATIN1的了。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章