2012-07-08 76 views
3

我想用西班牙字符做一個簡單的插入沒有成功。這是我簡單的MySQL表結構:如何在MySQL中插入西班牙文字符?

CREATE TABLE student (
    id INTEGER NOT NULL AUTO_INCREMENT, 
    name VARCHAR(100) NOT NULL, 
    lastname VARCHAR(100) NOT NULL, 
    CONSTRAINT PK_STUDENT PRIMARY KEY (id) 
) CHARACTER SET utf8 COLLATE utf8_general_ci; 

namelastname領域將是西班牙人民,他們的第一個和最後一個名字是這樣的:

  • 丹尼爾·貝拉斯克斯

  • 哈維爾Ñañez

  • VíctorSánchez

但是,當我做到以下幾點:

mysql> INSERT INTO student (name, lastname) VALUES ('Víctor', 'Sanchez'); 

我得到這個錯誤:

ERROR 1366 (HY000): Incorrect string value: '\xA1ctor' for column 'name' at row 
1 

好吧,我真搞不清楚排序規則,encondings,一切都在做互聯網上搜索時,相關。

那麼,處理這個問題的正確方法是什麼?只是知道我使用PHP,我知道一種方法來檢索一些特殊字符是使用htmlentities($value);

在此先感謝。

+0

您是否嘗試將字段歸類更改爲l atin1_swedish_ci? – 2012-07-08 18:39:12

+0

@ Battle_707你給了我一個小提示,我解決了這個問題,只是在使用「charset latin1」啓動mysql時指定了字符集 – 2012-07-08 19:01:13

回答

0

當您啓動mysql,指定的Unicode:

mysql --default-character-set=utf8 
+0

在SSH中它沒有工作:( – Pathros 2017-03-01 17:14:52

相關問題