2013-05-01 74 views
0

我有一個現有的SQL文件,我想導入到MySQL數據庫5.5導入後,我做一個:SELECT * FROM地址; 而不是'Straße'我得到'Straße'導入命令是:mysql -uroot store < C:\ PathTo \ store.sql使用phpMyAdmin我得到相同的結果。有趣的是,這個工作一年前(也許與另一個MySQL數據庫版本)導入SQL爲拉丁-1

DROP SCHEMA IF EXISTS store; 
CREATE SCHEMA IF NOT EXISTS store DEFAULT CHARACTER SET=latin1; 
USE store; 

SET sql_mode = 'STRICT_ALL_TABLES'; 
SET NAMES latin1; 
... 
DROP TABLE IF EXISTS address; 
CREATE TABLE IF NOT EXISTS address (
    pk_id INT UNSIGNED NOT NULL AUTO_INCREMENT, 
    zipCode DECIMAL(6,0) NOT NULL, 
    city VARCHAR(32) NOT NULL, 
    street VARCHAR(32) NOT NULL, 
    number VARCHAR(8) NOT NULL, 
    fk_customer INT UNSIGNED NOT NULL, 
    PRIMARY KEY (pk_id), 
    CONSTRAINT 
    FOREIGN KEY (fk_customer) 
    REFERENCES customer(pk_id) 
    ON DELETE CASCADE 
    ON UPDATE CASCADE 
); 
... 
insert into address (zipCode, city, street, number, fk_customer) values(111, "MyCity", "Straße", "7", 1); 
... 

回答

0

我加入ALTER DATABASE store DEFAULT CHARACTER SET latin1 COLLATE latin1_german1_ci;到SQL腳本文件解決我的問題。所以它看起來像:

DROP SCHEMA IF EXISTS store; 
CREATE SCHEMA IF NOT EXISTS store DEFAULT CHARACTER SET=latin1; 
USE store; 

ALTER DATABASE `store` DEFAULT CHARACTER SET latin1 COLLATE latin1_german1_ci; 

SET sql_mode = 'STRICT_ALL_TABLES'; 
SET NAMES latin1; 
...