MySQL中文建表問題的確很讓人頭疼,下面就為您舉例說明MySQL中文建表問題,如果您之前遇到過MySQL中文建表問題,不妨一看。
數據庫中數據的導入導出是一個最簡單, 也是最必須的功能.
比如系統在開發時候在個人PC機上, 數據庫有很多的初始化數據, 系統開發完成了, 則要把這些初始化數據從PC機上導出成SQL腳本, 在服務器上只要導入這些SQL腳本即可完成數據庫初始化.
但是, 對於中文字符的導入卻成了大問題, 導入中文, 數據老是報錯"Data too long for column XX at row n"
這個問題一直困擾著我, 由於以前數據量比較小, 也就不用導入功能, 大不了再重新初始化一次了. 如今不行了, 初始化數據實在太多, 不可能重新初始化, 但我一直認為一定會有辦法解決這個問題, 今天上網找資料搞了大半天, 這個問題基本解決.
為了清楚描述這個問題, 現詳細講解如下:
1. 建數據庫
Microsoft Windows XP [版本 5.1.2600]
(C) 版權所有 1985-2001 Microsoft Corp.
C:\Documents and Settings\awish>mysql -u root -p
Enter password: *******
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 24 to server version: 5.0.27-community-nt
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql> create database test;
2. 設置數據編碼為utf8
- mysql> use test;
- Database changed
- mysql> set names utf8; //設置數據庫字符集為utf8
- Query OK, 0 rows affected (0.00 sec)
3. 創建數據表
- mysql> CREATE TABLE person
- -> (
- -> id INT(8) NOT NULL AUTO_INCREMENT PRIMARY KEY,
- -> name varchar(16) default 'nobody',
- -> birthday char(19),
- -> )ENGINE=InnoDB DEFAULT CHARSET=utf8//創建數據表,字符集設定為utf8
- -> ;
- Query OK, 0 rows affected (0.03 sec)
MySQL復制表數據到新表的方法
MySQL多表刪除的實現
MySQL獨立表空間的優缺點
MySQL MyISAM表結構的恢復
MySQL查詢表字段個數的兩種方法