
# 字符串数据类型
表1字符串数据类型 
| 数据类型       | 与MySQL的差异                                                                                                                                                                                                                                                                                                              |
|:---|:---|
| CHAR(M)    | 具体差异请参见表格下方说明中的内容。                                                                                                                                                                                                                                                                                                     |
| VARCHAR(M) | 具体差异请参见表格下方说明中的内容。                                                                                                                                                                                                                                                                                                     |
| TINYTEXT   | 具体差异请参见表格下方说明中的内容。                                                                                                                                                                                                                                                                                                     |
| TEXT       | 具体差异请参见表格下方说明中的内容。                                                                                                                                                                                                                                                                                                     |
| MEDIUMTEXT | 具体差异请参见表格下方说明中的内容。                                                                                                                                                                                                                                                                                                     |
| LONGTEXT   | 输入格式： - GaussDB最大支持1GB-512字节长度，MySQL最大支持4GB-1字节长度。  - 其余差异请参见表格下方说明中的内容。   |
   
![](https://support.huaweicloud.com/usermanual-ugo/public_sys-resources/note_3.0-zh-cn.png)
- 对于无法转义的二进制或十六进制字符串，MySQL会输出空字符串，GaussDB输出为十六进制结果。
- 对于TINYTEXT、TEXT、MEDIUMTEXT、LONGTEXT类型：
  - MySQL中不允许设置默认值，GaussDB中创建表列时语法上允许设置默认值。
  
  - 主键：MySQL中不支持主键，GaussDB支持。
  
  - 索引：MySQL中不支持除前缀索引外其他索引方法，GaussDB支持。
  
  - 外键：MySQL中不支持作为外键的参考列/被参考列，GaussDB支持。
   
 
示例：
```
-- GaussDB
m_db=# CREATE TABLE test_text(a text);
CREATE TABLE
m_db=# INSERT INTO test_text VALUES(0x1);
INSERT 0 1
m_db=# INSERT INTO test_text VALUES(0x111111);
INSERT 0 1
m_db=# INSERT INTO test_text VALUES(0x61);
INSERT 0 1
m_db=# SELECT * FROM test_text;
      a       
--------------
 \x01
 \x11\x11\x11
 a
(3 rows)
m_db=# DROP TABLE test_text;
DROP TABLE
-- MySQL 5.7
mysql> CREATE TABLE test_text(a text);
Query OK, 0 rows affected (0.01 sec)
mysql> INSERT INTO test_text VALUES(0x1);
Query OK, 1 row affected (0.01 sec)
mysql> INSERT INTO test_text VALUES(0x111111);
Query OK, 1 row affected (0.00 sec)
mysql> INSERT INTO test_text VALUES(0x61);
Query OK, 1 row affected (0.00 sec)
mysql> SELECT * FROM test_text;
+------+
| a    |
+------+
|     |
|   |
| a    |
+------+
3 rows in set (0.00 sec)
mysql> DROP TABLE test_text;
Query OK, 0 rows affected (0.01 sec)
```
