mysql - 使用 MediaWiki 软件 - 如何在 MySQL 中将页面标题的长度从 255 字节更改为无限长?

标签 mysql unicode mediawiki

我正在尝试在 MediaWiki 软件中使用 unicode 字符(藏文,但中文、天城文等也会出现类似问题)来创建页面名称。然而,在一定数量的藏文字符之后,系统拒绝创建页面,因为底层 MySQL 数据库中的设置允许页面标题的长度仅为 255 字节。我不确定要更改哪些表格和哪些字段以允许更长的页面标题。有人知道吗?

最佳答案

在 MySQL 中(或者实际上在大多数系统中)没有无限长度的列类型。如果 VARCHAR(255) 对您来说不够,请考虑 TEXT (64Kb)、MEDIUMTEXT (16Mb) 或 LONGTEXT (4Gb) 列。

如果您对该列使用 UTF-8 排序规则(您应该这样做!),那么 VARCHAR(255) 列仍将存储 255 个字符,无论它们是否为拉丁字符,梵文或其他东西。只有当您将 UTF-8 字符串存储为字节(通常是 latin_1_swedish)时,它们才会从 varchar 限制中获取比拉丁字母更多的字符。

关于mysql - 使用 MediaWiki 软件 - 如何在 MySQL 中将页面标题的长度从 255 字节更改为无限长?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3561597/

相关文章:

mysql - 在 Orientdb 中合并两个类

mysql - 存储 oauth 和本地身份验证方法的最佳实践?

php - wordpress - 大帖子ID,以后还好吗?

Unicode:代码点 127 以上的英文字符

mysql - 有效地重新索引庞大的数据库(英文维基百科)

wiki - 哪个 wiki 允许我在单击其链接时动态创建页面?

mysql - 恢复旧的 MySQL 备份

来自 2 个不同表的值出现的 Mysql 百分比

WinApi DrawText 和 TextOut 无法显示 unicode 字符 U+5167

perl - 在perl中解码unicode JSON的问题