仅在Grails 1.1数据库表中使用UTF-8

kno*_*orv 2 mysql unicode grails utf-8

将Grails 1.1与MySQL一起使用时,自动生成的数据库表的字符集似乎默认为ISO-8859-1.我宁愿将所有内容存储为纯UTF-8.那可能吗?

从自动生成的数据库定义:

ENGINE=MyISAM AUTO_INCREMENT=1 DEFAULT CHARSET=latin1;
Run Code Online (Sandbox Code Playgroud)

注意"latin1"部分.

这里描述适用于Grails 1.0的解决方法.使用Grails 1.1时,这种解决方法似乎不起作用.dataSource.dialect参数似乎被忽略.

kno*_*orv 5

看起来好像使用了数据库的默认字符集.

我通过使用utf8作为默认字符集创建数据库来解决这个问题:

CREATE DATABASE name_of_database DEFAULT CHARACTER SET utf8;
Run Code Online (Sandbox Code Playgroud)