Skip to content

Commit

Permalink
update mysql-compatibility (#1079)
Browse files Browse the repository at this point in the history
  • Loading branch information
yangj1211 authored May 29, 2024
1 parent 985fd79 commit 2eb4668
Showing 1 changed file with 10 additions and 10 deletions.
20 changes: 10 additions & 10 deletions docs/MatrixOne/Overview/feature/mysql-compatibility.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,6 @@ MatrixOne 与 MySQL 8.0 的协议,以及 MySQL 8.0 常用的功能和语法都

### TABLE 相关

* 不支持 `CREATE TABLE .. AS SELECT` 语句。
* 不支持表定义中的 `ENGINE=`,但 MatrixOne 会直接忽略 `ENGINE=`
* ALTER TABLE 中的这些子句:`CHANGE [COLUMN]``MODIFY [COLUMN]``RENAME COLUMN``ADD [CONSTRAINT [symbol]] PRIMARY KEY``DROP PRIMARY KEY``ALTER COLUMN ORDER BY` 可以在 ALTER TABLE 语句中自由组合使用,但不支持与其他子句一起使用。
* 临时表暂不支持使用 `ALTER TABLE` 修改表结构。
Expand Down Expand Up @@ -79,7 +78,7 @@ MatrixOne 与 MySQL 8.0 的协议,以及 MySQL 8.0 常用的功能和语法都

### INSERT 相关

* MatrixOne 不支持 `LOW_PRIORITY``DELAYED``HIGH_PRIORITY``IGNORE` 等修饰符。
* MatrixOne 不支持 `LOW_PRIORITY``DELAYED``HIGH_PRIORITY` 等修饰符。

### UPDATE 相关

Expand All @@ -96,7 +95,6 @@ MatrixOne 与 MySQL 8.0 的协议,以及 MySQL 8.0 常用的功能和语法都
### LOAD 相关

* MatrixOne 支持 `SET`,但只支持 `SET columns_name=nullif(expr1,expr2)` 的形式。
* MatrixOne 不支持 `ESCAPED BY`
* MatrixOne 支持客户端执行 `LOAD DATA LOCAL`,但在连接时必须加入 `--local-infile` 参数。
* MatrixOne 支持导入 `JSONlines` 文件,但需要使用一些特殊的语法。
* MatrixOne 支持从对象存储导入文件,但需要使用一些特殊的语法。
Expand All @@ -120,7 +118,7 @@ MatrixOne 与 MySQL 8.0 的协议,以及 MySQL 8.0 常用的功能和语法都

## 流计算

* 流计算属于 MatrixOne 独有功能,目前 1.1 版本仅支持 Kafka 连接器。
* 流计算属于 MatrixOne 独有功能,目前 1.2.0 版本仅支持 Kafka 连接器。
* Kafka 连接器需要通过特殊语法创建及使用。

## 数据类型
Expand All @@ -131,14 +129,15 @@ MatrixOne 与 MySQL 8.0 的协议,以及 MySQL 8.0 常用的功能和语法都
* DATETIME: MySQL 的最大取值范围为 `'1000-01-01 00:00:00'``'9999-12-31 23:59:59'`,MatrixOne 的最大范围为 `'0001-01-01 00:00:00'``'9999-12-31 23:59:59'`
* TIMESTAMP: MySQL 的最大取值范围是 `'1970-01-01 00:00:01.000000'` UTC 到 `'2038-01-19 03:14:07.999999'` UTC,MatrixOne 的最大范围 `'0001-01-01 00:00:00'` UTC 到 `'9999-12-31 23:59:59'` UTC。
* MatrixOne 支持 UUID 类型。
* MatrixOne 支持向量类型。
* 不支持空间 Spatial 类型。
* 不支持 BIT,SET 类型。
* 不支持 SET 类型。
* 不支持 MEDIUMINT 类型。

## 索引和约束

* MatrixOne 支持向量索引。
* 次级索引在 `IN`, `Between and``Like` 语句中暂时不生效。
* 外键不支持自引用。
* 外键不支持 `ON CASCADE DELETE` 级联删除。

## 分区支持
Expand All @@ -150,7 +149,7 @@ MatrixOne 与 MySQL 8.0 的协议,以及 MySQL 8.0 常用的功能和语法都

## 关键字

* MatrixOne 中比 MySQL 多了三个保留关键字,`begin`, `reindex`, `ownership`, 用于 Database/Table/Column 创建时需要增加反引号
* MatrixOne MySQL 关键字差异较多,请参考 [MatrixOne 关键字](../../Reference/Language-Structure/keywords.md)

## 函数与操作符

Expand Down Expand Up @@ -197,13 +196,14 @@ MatrixOne 与 MySQL 8.0 的协议,以及 MySQL 8.0 常用的功能和语法都
## 备份恢复

* 支持基于 mobackup 工具的物理备份。
* 支持快照备份
* 不支持 mysqldump 备份工具,仅支持 mo-dump 工具。
* 不支持 binlog 日志备份。
* 不支持增量备份。

## 系统变量

* MatrixOne 的 `lower_case_table_names` 有 5 种模式,默认为 1。
* MatrixOne 的 `lower_case_table_names` 有 2 种模式,默认为 1。
* MatrixOne 的 `sql_mode` 只支持 `ONLY_FULL_GROUP_BY` 一种模式

## 系统表

Expand All @@ -215,7 +215,7 @@ MatrixOne 与 MySQL 8.0 的协议,以及 MySQL 8.0 常用的功能和语法都

## 编程语言

* Java,Python,Golang 连接器和 ORM 基本支持,其他语言的连接器及 ORM 可能会碰到兼容性问题。
* Java,Python,C#,Golang 连接器和 ORM 基本支持,其他语言的连接器及 ORM 可能会碰到兼容性问题。

## 其他支持工具

Expand Down

0 comments on commit 2eb4668

Please sign in to comment.