📄 is_cml_ndb.result
字号:
USE test;DROP TABLE IF EXISTS t1;CREATE TABLE t1(f1 CHAR UNICODE,f2 CHAR(0) UNICODE,f3 CHAR(10) UNICODE,f5 VARCHAR(0) UNICODE,f6 VARCHAR(255) UNICODE,f7 VARCHAR(260) UNICODE,f8 TEXT UNICODE,f9 TINYTEXT UNICODE,f10 MEDIUMTEXT UNICODE,f11 LONGTEXT UNICODE) ENGINE = NDB;SELECT * FROM information_schema.columnsWHERE table_schema LIKE 'test%'ORDER BY table_schema, table_name, column_name;TABLE_CATALOG TABLE_SCHEMA TABLE_NAME COLUMN_NAME ORDINAL_POSITION COLUMN_DEFAULT IS_NULLABLE DATA_TYPE CHARACTER_MAXIMUM_LENGTH CHARACTER_OCTET_LENGTH NUMERIC_PRECISION NUMERIC_SCALE CHARACTER_SET_NAME COLLATION_NAME COLUMN_TYPE COLUMN_KEY EXTRA PRIVILEGES COLUMN_COMMENTNULL test t1 f1 1 NULL YES char 1 2 NULL NULL ucs2 ucs2_general_ci char(1) select,insert,update,references NULL test t1 f10 9 NULL YES mediumtext 8388607 16777215 NULL NULL ucs2 ucs2_general_ci mediumtext select,insert,update,references NULL test t1 f11 10 NULL YES longtext 2147483647 4294967295 NULL NULL ucs2 ucs2_general_ci longtext select,insert,update,references NULL test t1 f2 2 NULL YES char 0 0 NULL NULL ucs2 ucs2_general_ci char(0) select,insert,update,references NULL test t1 f3 3 NULL YES char 10 20 NULL NULL ucs2 ucs2_general_ci char(10) select,insert,update,references NULL test t1 f5 4 NULL YES varchar 0 0 NULL NULL ucs2 ucs2_general_ci varchar(0) select,insert,update,references NULL test t1 f6 5 NULL YES varchar 255 510 NULL NULL ucs2 ucs2_general_ci varchar(255) select,insert,update,references NULL test t1 f7 6 NULL YES varchar 260 520 NULL NULL ucs2 ucs2_general_ci varchar(260) select,insert,update,references NULL test t1 f8 7 NULL YES text 32767 65535 NULL NULL ucs2 ucs2_general_ci text select,insert,update,references NULL test t1 f9 8 NULL YES tinytext 127 255 NULL NULL ucs2 ucs2_general_ci tinytext select,insert,update,references ########################################################################### Show the quotient of CHARACTER_OCTET_LENGTH and CHARACTER_MAXIMUM_LENGTH##########################################################################SELECT DISTINCTCHARACTER_OCTET_LENGTH / CHARACTER_MAXIMUM_LENGTH AS COL_CML,DATA_TYPE,CHARACTER_SET_NAME,COLLATION_NAMEFROM information_schema.columnsWHERE table_schema LIKE 'test%'AND CHARACTER_OCTET_LENGTH / CHARACTER_MAXIMUM_LENGTH = 1ORDER BY CHARACTER_SET_NAME, COLLATION_NAME, COL_CML;COL_CML DATA_TYPE CHARACTER_SET_NAME COLLATION_NAMESELECT DISTINCTCHARACTER_OCTET_LENGTH / CHARACTER_MAXIMUM_LENGTH AS COL_CML,DATA_TYPE,CHARACTER_SET_NAME,COLLATION_NAMEFROM information_schema.columnsWHERE table_schema LIKE 'test%'AND CHARACTER_OCTET_LENGTH / CHARACTER_MAXIMUM_LENGTH <> 1ORDER BY CHARACTER_SET_NAME, COLLATION_NAME, COL_CML;COL_CML DATA_TYPE CHARACTER_SET_NAME COLLATION_NAME2.0000 char ucs2 ucs2_general_ci2.0000 longtext ucs2 ucs2_general_ci2.0000 mediumtext ucs2 ucs2_general_ci2.0000 text ucs2 ucs2_general_ci2.0000 varchar ucs2 ucs2_general_ci2.0079 tinytext ucs2 ucs2_general_ciSELECT DISTINCTCHARACTER_OCTET_LENGTH / CHARACTER_MAXIMUM_LENGTH AS COL_CML,DATA_TYPE,CHARACTER_SET_NAME,COLLATION_NAMEFROM information_schema.columnsWHERE table_schema LIKE 'test%'AND CHARACTER_OCTET_LENGTH / CHARACTER_MAXIMUM_LENGTH IS NULLORDER BY CHARACTER_SET_NAME, COLLATION_NAME, COL_CML;COL_CML DATA_TYPE CHARACTER_SET_NAME COLLATION_NAMENULL char ucs2 ucs2_general_ciNULL varchar ucs2 ucs2_general_ci--> CHAR(0) is allowed (see manual), and here both CHARACHTER_* values--> are 0, which is intended behavior, and the result of 0 / 0 IS NULLSELECT CHARACTER_OCTET_LENGTH / CHARACTER_MAXIMUM_LENGTH AS COL_CML,TABLE_SCHEMA,TABLE_NAME,COLUMN_NAME,DATA_TYPE,CHARACTER_MAXIMUM_LENGTH,CHARACTER_OCTET_LENGTH,CHARACTER_SET_NAME,COLLATION_NAME,COLUMN_TYPEFROM information_schema.columnsWHERE table_schema LIKE 'test%'ORDER BY TABLE_SCHEMA, TABLE_NAME, ORDINAL_POSITION;COL_CML TABLE_SCHEMA TABLE_NAME COLUMN_NAME DATA_TYPE CHARACTER_MAXIMUM_LENGTH CHARACTER_OCTET_LENGTH CHARACTER_SET_NAME COLLATION_NAME COLUMN_TYPE2.0000 test t1 f1 char 1 2 ucs2 ucs2_general_ci char(1)NULL test t1 f2 char 0 0 ucs2 ucs2_general_ci char(0)2.0000 test t1 f3 char 10 20 ucs2 ucs2_general_ci char(10)NULL test t1 f5 varchar 0 0 ucs2 ucs2_general_ci varchar(0)2.0000 test t1 f6 varchar 255 510 ucs2 ucs2_general_ci varchar(255)2.0000 test t1 f7 varchar 260 520 ucs2 ucs2_general_ci varchar(260)2.0000 test t1 f8 text 32767 65535 ucs2 ucs2_general_ci text2.0079 test t1 f9 tinytext 127 255 ucs2 ucs2_general_ci tinytext2.0000 test t1 f10 mediumtext 8388607 16777215 ucs2 ucs2_general_ci mediumtext2.0000 test t1 f11 longtext 2147483647 4294967295 ucs2 ucs2_general_ci longtextDROP TABLE t1;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -