0
當執行命令doctrine:schema:update --dump-sql
我得到這個命令來創建一個表,你可以看到它使用utf8
字符集和utf8_unicode_ci
整理,但數據庫設置爲latin1
和latin1_swedish_ci
:主義無視數據庫字符集和校對規則
CREATE TABLE an_example
(id INT AUTO_INCREMENT NOT NULL,
id_user INT NOT NULL,
date DATETIME NOT NULL,
PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci ENGINE = InnoDB;
在數據庫:
mysql> SELECT * FROM information_schema.SCHEMATA WHERE schema_name = "mydb";
+--------------+-------------+----------------------------+------------------------+----------+
| CATALOG_NAME | SCHEMA_NAME | DEFAULT_CHARACTER_SET_NAME | DEFAULT_COLLATION_NAME | SQL_PATH |
+--------------+-------------+----------------------------+------------------------+----------+
| def | mydb | latin1 | latin1_swedish_ci | NULL |
+--------------+-------------+----------------------------+------------------------+----------+
而且也,在config.yml
我沒設置配置:
doctrine:
dbal:
driver: pdo_mysql
host: '%database_host%'
port: '%database_port%'
dbname: '%database_name%'
user: '%database_user%'
password: '%database_password%'
charset: latin1
default_table_options:
collate: "latin1_swedish_ci"
(爲了以防萬一,我刪除了緩存)。所以,我認爲我或學說錯過了一些東西,你能幫助我嗎?
謝謝