[DBAL-166] Table Encoding on generation table creation query Created: 14/Sep/11 Updated: 01/Apr/12 Resolved: 01/Apr/12 |
|
| Status: | Resolved |
| Project: | Doctrine DBAL |
| Component/s: | Schema Managers |
| Affects Version/s: | 2.1.2 |
| Fix Version/s: | 2.3 |
| Security Level: | All |
| Type: | Bug | Priority: | Major |
| Reporter: | Punin Nicolay G. | Assignee: | Benjamin Eberlei |
| Resolution: | Fixed | Votes: | 1 |
| Labels: | None | ||
| Environment: |
mysql |
||
| Attachments: |
|
| Description |
|
Can not set charset options for table creation. #!/usr/bin/php
$data = file_get_contents('./vendor/doctrine-dbal/lib/Doctrine/DBAL/Schema/Schema.php'); |
| Comments |
| Comment by Stepan Tanasiychuk [ 20/Oct/11 ] |
|
Guys, it's real problem for me too! (: My test suite (in symfony2 project) always creates tables with "latin1_swedish_ci" collation. I want set "utf8_general_ci". But I don't want do it's in mysql.ini. I tried setting it in MysqlSessionInit __construct, but it's not solved my problem. In MySqlPlatform I found next code (https://github.com/doctrine/dbal/blob/master/lib/Doctrine/DBAL/Platforms/MySqlPlatform.php#L420): if (isset($options['charset'])) { $optionStrings['charset'] = 'DEFAULT CHARACTER SET ' . $options['charset']; if (isset($options['collate'])) { $optionStrings['charset'] .= ' COLLATE ' . $options['collate']; } } But any options don't set in this call |
| Comment by Benjamin Eberlei [ 01/Apr/12 ] |
|
Implemented this as a new feature on Schema. Also defaulting to UTF-8 now. |