使用Ubuntu在安裝好MySQL資料庫之後,如果直接創建資料庫,再創建數據表,那麼是無法向欄位插入中文的,會報Incorrect string value錯誤。 c實現編碼設置的兩種方法: (1)動態設置 創建資料庫: CREATE DATABASE PyDB CHARACTER SET 'utf ...
使用Ubuntu在安裝好MySQL資料庫之後,如果直接創建資料庫,再創建數據表,那麼是無法向欄位插入中文的,會報Incorrect string value錯誤。
c實現編碼設置的兩種方法:
(1)動態設置
創建資料庫:
CREATE DATABASE PyDB
CHARACTER SET 'utf8'
COLLATE 'utf8_general_ci';
選擇此資料庫:
USE PyDB;
創建表:
CREATE TABLE PyTable (
username VARCHAR(10),
useraddr VARCHAR(10)
)ENGINE=InnoDB DEFAULT CHARSET=utf8;
(2)改變預設編碼
在mysql下,先執行命令:SHOW variables LIKE '%char%';
查看資料庫預設編碼是latin1。
以root身份更改mysql的配置文件
在/etc/my.cnf 或 /etc/mysql/my.cnf 添加以下指令並保存:
[client]
default-character-set = utf8
[mysqld]
default-storage-engine = INNODB
character-set-server = utf8
collation-server = utf8_general_ci
然後重啟mysql:service mysql restart
再次查看:SHOW variables LIKE '%char%';
可以看到編碼已經是UTF8。