Django || SyncDb || 创建nvarchar字段

1 投票
1 回答
1998 浏览
提问于 2025-04-17 14:22

我刚开始学习Django,想创建一个数据库表,里面的字段是nvarchar类型,而不是varchar。

我在使用MySQL,并在我的类里面创建类型为models.CharField()的对象。

有没有什么建议?

谢谢,
帕特里克

1 个回答

2

据我所知,MySQL中和NVARCHAR相对应的是使用utf8字符集的VARCHAR。你可以查看这个MySQL的参考页面,前提是你使用的是4.1或更新的版本。

所以,如果你的列默认就是utf8,那就没问题。

如果你默认使用的是其他字符集(我不确定Django是否支持这个),而你只想要一些utf8的列,你可以通过继承models.CharField并重写db_type来实现。这里有Django自定义字段的文档

撰写回答