首页 > 解决方案 > [cs] 在 MariaDb 的 DDL 中是什么意思

问题描述

我有一张桌子的 DDL

create table AIRPORT (
    AIRP_CODE varchar(10)[cs] not null,
    AIRP_NAME nvarchar(60)[cs] not null,
    GEOR_ID_LOCATED integer not null,
    PRCC_CONST integer,
    AIRP_TIME_ZONE char(5),
    AIRP_TRANSLATION mediumtext,
    LCOUNT integer default 0
);

我试图弄清楚 [cs] 是什么意思。我认为它用于整理,但我不确定它是如何工作的。表 DDL 不是我写的,我想不通。

标签: mysqlsqlmariadb

解决方案


在那个位置将是CHARACTER SET和/或COLLATION

“机场代码”最好是CHARACTER SET ascii. 根据您是否要允许折叠案例,您可以使用COLLATION ascii_bin(禁止折叠)或COLLATION ascii_ci(允许折叠)。

对于机场名称,最好使用UTF-8

AIRP_NAME varchar(60) CHARACTER SET utf8mb4 COLLATION utf8mb4_unicode_520_ci not null

注意: NVARCHAR是来自非 MySQL 供应商的符号;对于 MySQL,sharset 很重要。

也许您还想为 指定一个字符集AIRP_TRANSLATION?同样, utf8mb4 可能是合适的。

(我从未见过“[cs]”;我的建议是针对应该在该上下文中指定的内容。)


推荐阅读