字符串类型
概述
MySQL以字符单位解释字符列定义中的长度规范。这适用于 CHAR、VARCHAR和TEXT类型。DSC工具支持以下列出类型转换。
类型对照
MySQL字符串类型 |
MySQL INPUT |
GaussDB(DWS) OUTPUT |
---|---|---|
CHAR |
CHAR[(0)] CHAR[(n)] |
CHAR[(1)] CHAR[(4n)] |
CHARACTER |
CHARACTER[(0)] CHARACTER[(n)] |
CHAR[(1)] CHAR[(4n)] |
NCHAR |
NCHAR[(0)] NCHAR[(n)] |
CHAR[(1)] CHAR[(4n)] |
LONGTEXT |
LONGTEXT |
TEXT |
MEDIUMTEXT |
MEDIUMTEXT |
TEXT |
TEXT |
TEXT |
TEXT |
TINYTEXT |
TINYTEXT |
TEXT |
VARCHAR |
VARCHAR[(0)] VARCHAR[(n)] |
VARCHAR[(1)] VARCHAR[(4n)] |
NVARCHAR |
NVARCHAR[(0)] NVARCHAR[(n)] |
VARCHAR[(1)] VARCHAR[(4n)] |
CHARACTE VARYING |
CHARACTE VARYING |
VARCHAR |
- CHAR/CHARACTER/NCHAR进行转换时,如果其精度小于等于0时,转换后为CHAR(1),如果精度大于0,则转换为CHAR类型4倍的精度大小。
- VARCHAR/NVARCHAR进行转换时,如果其精度小于等于0时,转换后为VARCHAR(1),如果精度大于0,则转换为VARCHAR类型4倍的精度大小。
输入示例CHAR
MySQL一个长度CHAR列被固定在创建表声明的长度,长度可以是从0到255之间的任何值。CHAR存储值时,它们将空格填充到指定的长度。
1 2 3 4 5 |
CREATE TABLE IF NOT EXISTS `runoob_dataType_test`( `dataType_1` CHAR NOT NULL, `dataType_2` CHAR(0) NOT NULL, `dataType_3` CHAR(255) NOT NULL ); |
输出示例
1 2 3 4 5 6 7 8 9 |
CREATE TABLE IF NOT EXISTS "public"."runoob_datatype_test" ( "datatype_1" CHAR NOT NULL, "datatype_2" CHAR(1) NOT NULL, "datatype_3" CHAR(1020) NOT NULL ) WITH ( ORIENTATION = ROW, COMPRESSION = NO ) NOCOMPRESS DISTRIBUTE BY HASH ("datatype_1"); |
输入示例[LONG|MEDIUM|TINY]TEXT
1 2 3 4 5 6 |
CREATE TABLE IF NOT EXISTS `runoob_dataType_test`( `dataType_1` LONGTEXT, `dataType_2` MEDIUMTEXT, `dataType_3` TEXT, `dataType_4` TINYTEXT ); |
输出示例
1 2 3 4 5 6 7 8 9 10 |
CREATE TABLE IF NOT EXISTS "public"."runoob_datatype_test" ( "datatype_1" TEXT, "datatype_2" TEXT, "datatype_3" TEXT, "datatype_4" TEXT ) WITH ( ORIENTATION = ROW, COMPRESSION = NO ) NOCOMPRESS DISTRIBUTE BY HASH ("datatype_1"); |
输入示例VARCHAR
MySQL VARCHAR列中的 值是可变长度的字符串。长度可以指定为0到65,535之间的值。
1 2 3 4 |
CREATE TABLE IF NOT EXISTS `runoob_dataType_test`( `dataType_1` VARCHAR(0), `dataType_2` VARCHAR(1845) ); |
输出示例
1 2 3 4 5 6 7 8 |
CREATE TABLE IF NOT EXISTS "public"."runoob_datatype_test" ( "datatype_1" VARCHAR(1), "datatype_2" VARCHAR(7380) ) WITH ( ORIENTATION = ROW, COMPRESSION = NO ) NOCOMPRESS DISTRIBUTE BY HASH ("datatype_1"); |