diff --git a/product/en/docs-mtk/v2.0/commands/mtk_mig-select.md b/product/en/docs-mtk/v2.0/commands/mtk_mig-select.md index c5a1447ca5fb8adcd99cf442721bcaa033bcea27..9dd53b12fa63d179be7756e0e3483a16553ec9e5 100644 --- a/product/en/docs-mtk/v2.0/commands/mtk_mig-select.md +++ b/product/en/docs-mtk/v2.0/commands/mtk_mig-select.md @@ -4,6 +4,7 @@ summary: mtk mig-select author: mtk date: 2022-01-07 --- + ## mtk mig-select mig select to csv or table data @@ -24,6 +25,9 @@ mtk mig-select [flags] # mig select to table ./mtk -c mtk.json --sql "select 1 as col1,sysdate as col2, 'aaa' as col3 from dual" --tabName schema1.table1 + +# colName with spaces,tab, NBSP(Non-Breaking Space) +./mkt -c mtk.json --sql 'select "ID" AS "ID","ID1" AS "ID1"," COL1 " AS " COL1"," COL2 " AS " COL2"," COL 3 " AS " COL 3"," KEY_RECNO         " AS " KEY_RECNO" FROM MTK1."TEST_TABLE_2020415 "' ``` ### Options diff --git a/product/en/docs-mtk/v2.0/mtk-config.md b/product/en/docs-mtk/v2.0/mtk-config.md index 69d5aab28e0bffd401fadc9426dda8b901db05e0..dcdceae6245160c778a7a96cdc5558174cb306c1 100644 --- a/product/en/docs-mtk/v2.0/mtk-config.md +++ b/product/en/docs-mtk/v2.0/mtk-config.md @@ -875,6 +875,8 @@ Defines migration objects. > Parameters **schemas** and **tables** are mutually exclusive. > If both parameters are configured, the error "mtk-1002 schema and table cannot exist together" will occur during migration. +> +> If no migration object is defined, the error "not define Migrate object" will occur during migration. ### schema diff --git a/product/en/docs-mtk/v2.0/mtk-db2-to-mysql.md b/product/en/docs-mtk/v2.0/mtk-db2-to-mysql.md index 912d874a0700f97d82d8dcecdd1161544b1579eb..e7466a4697aa4f239ab06a1b5e5a879a52fe33e1 100644 --- a/product/en/docs-mtk/v2.0/mtk-db2-to-mysql.md +++ b/product/en/docs-mtk/v2.0/mtk-db2-to-mysql.md @@ -18,6 +18,10 @@ date: 2021-03-04 ## Precautions +## name + +Table/column/index/cons names in mysql do not support suffixes with spaces, mtk will automatically trim the space on the right + ### Empty String and Null Problems In DB2 and MySQL, null is not equal to an empty string, which does not need to be processed. @@ -419,6 +423,9 @@ hehel --> \x686568656c #### Default value of the column - current timestamp -> current_timestamp +- date/time column + - Previously MySQL 8.0.13 date/time column types did not support default values + - MySQL 8.0.13 can be enclosed in parentheses (current_date)/(current_time) ### Constraints diff --git a/product/en/docs-mtk/v2.0/mtk-dsn.md b/product/en/docs-mtk/v2.0/mtk-dsn.md index 4bc2ff7147ee4f95a5823a8a4362a55cc0692669..89e5183e82d5d1cc0188ff0141c84265dc294b25 100644 --- a/product/en/docs-mtk/v2.0/mtk-dsn.md +++ b/product/en/docs-mtk/v2.0/mtk-dsn.md @@ -65,3 +65,41 @@ Other reference documents: [Go DRiver for Oracle User Guide](https://godror.github.io/godror/doc/connection.html) [Oracle Database 19c Easy Connect Plus Configurable Database Connection Syntax](https://download.oracle.com/ocomdocs/global/Oracle-Net-19c-Easy-Connect-Plus.pdf) + +```json +{ + "dsn": "user=system password=pwd connectString=\"(DESCRIPTION=(CONNECT_TIMEOUT = 5)(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=127.0.0.1)(PORT=1521)))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=mtk)))\" configDir= connectionClass=godror enableEvents=0 externalAuth=0 heterogeneousPool=0 libDir= newPassword= noTimezoneCheck=0 poolIncrement=0 poolMaxSessions=100 poolMinSessions=0 poolSessionMaxLifetime=0s poolSessionTimeout=0s poolWaitTimeout=0s prelim=0 standaloneConnection=1 sysasm=0 sysdba=0 sysoper=0 timezone=" +} +``` + +## openGauss/MogDB/postgres + +```json +{ + "dsn": "application_name=mtk_postgres connect_timeout=5 dbname=postgres host=127.0.0.1 min_read_buffer_size=8388608 password=pwd port=5434 sslmode=disable user=gaussdb" +} +``` + +## MySQL + +```json +{ + "dsn": "root:pwd@tcp(127.0.0.1:3306)/mysql?loc=Local&multiStatements=true&timeout=30s&maxAllowedPacket=1073741824&charset=utf8mb4" +} +``` + +## DB2 + +```json +{ + "dsn": "ClientApplName=MTK;ConnectTimeout=5;DATABASE=testdb;HOSTNAME=127.0.0.1;PORT=50000;PWD=pwd;ProgramName=MTK;UID=db2inst1;XMLDeclaration=0" +} +``` + +## SQLServer + +```json +{ + "dsn": "sqlserver://sa:pwd@127.0.0.1:1433?app+name=mtk&connection+timeout=0&database=testdb" +} +``` diff --git a/product/en/docs-mtk/v2.0/mtk-oracle-to-openGauss.md b/product/en/docs-mtk/v2.0/mtk-oracle-to-openGauss.md index 84dd280a150ec8741e527009353532bad0132155..b362af14b615481a93cd74893d64b54cec1e9830 100644 --- a/product/en/docs-mtk/v2.0/mtk-oracle-to-openGauss.md +++ b/product/en/docs-mtk/v2.0/mtk-oracle-to-openGauss.md @@ -15,13 +15,15 @@ date: 2021-03-04 ## Oracle Migrate User Privilege -The migration user must be able to access the DBA_/ALL_ view and query the migration table permissions. +The migration user must be able to access the `DBA_*`/`ALL_*` view and query the migration table permissions. - connect - select any dictionary - select any table - select_catalog_role +> MTK query the `DBA_*` view from 2.3.0 onwards, not the query `ALL_*` view. +
## Comparison Between the MTK Type and the Oracle Type @@ -92,6 +94,7 @@ The object type is from `OBJECT_TYPE` of `DBA_OBJECT`. - number interval -- invalid input syntax for type interval - openGauss does not support subpartitions. +- The table of the materialized view does not migrate, the materialized view is migrated ### Empty string problem @@ -309,6 +312,14 @@ select name name from dual -- rewrite name as name ) ``` +### 同义词 + +Synonyms under DBLink are not migrated + +```sql +SELECT OWNER,SYNONYM_NAME,TABLE_OWNER,TABLE_NAME FROM DBA_SYNONYMS WHERE DB_LINK IS NULL; +``` + ### Spatial Migration Oracle Spatial object from Oracle database. There's some configuration directives that could be used to control the export. diff --git a/product/en/docs-mtk/v2.0/mtk-usage.md b/product/en/docs-mtk/v2.0/mtk-usage.md index a83b12adbd39ecf5e96b9fdb4287f0c3a6fb587b..af2a55c22081acec136026f1c85975602e6172eb 100644 --- a/product/en/docs-mtk/v2.0/mtk-usage.md +++ b/product/en/docs-mtk/v2.0/mtk-usage.md @@ -46,7 +46,7 @@ MTK supports three migration methods. |./mtk mig-tab-pre -c mtk.json|[mig-tab-post](commands/mtk-mig_tab-post)| |./mtk mig-tab-pre -c mtk.json|[mig-tab-other](commands/mtk-mig_tab-other)| -3. Distribution migration +3. Step-by-step migration The user controls the overall migration logic. diff --git a/product/en/docs-mtk/v2.0/release-notes.md b/product/en/docs-mtk/v2.0/release-notes.md index 03c02c55cee128e60d14b6bc7e6094e48fd10b62..4198346b98e1b9ca056ce5ac6b32fe8cddeb896b 100644 --- a/product/en/docs-mtk/v2.0/release-notes.md +++ b/product/en/docs-mtk/v2.0/release-notes.md @@ -7,6 +7,60 @@ date: 2021-09-13 # Release Notes +## v2.3.0 + +### MTK + +- [mtk_2.3.0_darwin_amd64.tar.gz](https://cdn-mogdb.enmotech.com/mtk/v2.3.0/mtk_2.3.0_darwin_amd64.tar.gz) +- [mtk_2.3.0_darwin_amd64_db2.tar.gz](https://cdn-mogdb.enmotech.com/mtk/v2.3.0/mtk_2.3.0_darwin_amd64_db2.tar.gz) +- [mtk_2.3.0_darwin_arm64.tar.gz](https://cdn-mogdb.enmotech.com/mtk/v2.3.0/mtk_2.3.0_darwin_arm64.tar.gz) +- [mtk_2.3.0_linux_amd64.tar.gz](https://cdn-mogdb.enmotech.com/mtk/v2.3.0/mtk_2.3.0_linux_amd64.tar.gz) +- [mtk_2.3.0_linux_amd64_db2.tar.gz](https://cdn-mogdb.enmotech.com/mtk/v2.3.0/mtk_2.3.0_linux_amd64_db2.tar.gz) +- [mtk_2.3.0_linux_arm64.tar.gz](https://cdn-mogdb.enmotech.com/mtk/v2.3.0/mtk_2.3.0_linux_arm64.tar.gz) +- [mtk_2.3.0_windows_amd64.tar.gz](https://cdn-mogdb.enmotech.com/mtk/v2.3.0/mtk_2.3.0_windows_amd64.tar.gz) +- [mtk_2.3.0_windows_amd64_db2.tar.gz](https://cdn-mogdb.enmotech.com/mtk/v2.3.0/mtk_2.3.0_windows_amd64_db2.tar.gz) +- [mtk_checksums.txt](https://cdn-mogdb.enmotech.com/mtk/v2.3.0/mtk_checksums.txt) + +### MTKD + +- [mtkd_2.3.0_linux_amd64.tar.gz](https://cdn-mogdb.enmotech.com/mtk/v2.3.0/mtkd_2.3.0_linux_amd64.tar.gz) +- [mtkd_2.3.0_linux_amd64_db2.tar.gz](https://cdn-mogdb.enmotech.com/mtk/v2.3.0/mtkd_2.3.0_linux_amd64_db2.tar.gz) +- [mtkd_2.3.0_linux_arm64.tar.gz](https://cdn-mogdb.enmotech.com/mtk/v2.3.0/mtkd_2.3.0_linux_arm64.tar.gz) + +### Bug Fixes + +- **DB2:** Migration to MySQL object name contains spaces to the right, and the MTK automatically trim the space on the right +- **DB2:** Migration to MySQL BLOB, TEXT, GEOMETRY or JSON column cannot define default values +- **DB2:** Removes the DB2CODEPAGE environment variable force check +- **MTKD:** Api interface returned 400 questions +- **MTKD:** Modify `deleteUserId` to `deletedUserId`, `updateUserId` to 'updatedUserId` +- **MySQL:** update syntax error issue +- **MySQL:** Conversion `interval` syntax issue +- **MySQL:** Chinese conversion issues +- **MySQL:** There is no `begin/end` syntax issue with the function +- **MySQL:** Conversion `join` syntax issue +- **MySQL:** Conversion `convert` to `cast` syntax issues +- **Oracle:** Conversion package to og package comment missing issue +- **Oracle:** Migration to mySQL object name contains spaces to the right, and the MTK automatically trim the space on the right +- **Oracle:** Conversion insert statement contains the `return` keyword problem +- **Oracle:** There is no stored procedure name issue in package +- **Oracle:** Parameter `colKeyWords` priority issue +- **Oracle:** Stored procedure parameters with annotated issue + +### Code Refactoring + +- **MTK:** Survival object name method + +### Features + +- **DB2:** Support DB2 `date/time` column default `current date/time` to MySQL `current_date/time` +- **MTKD:** Encrypted storage of passwords +- **MySQL:** Supports converting comment `#` to `--` +- **Oracle:** Replace the query view `all_` with the `dba_` view +- **Oracle:** Supports converting Insert statements with aliases +- **Oracle:** Supports converting Chinese symbol `(),`to English +- **openGauss:** Remove parameter `check_function_bodies=off` + ## v2.2.5 2022-04-10 diff --git a/product/zh/docs-mtk/v2.0/commands/mtk_mig-select.md b/product/zh/docs-mtk/v2.0/commands/mtk_mig-select.md index 80e6fc9fc8eae7f8fe878056ddb0eb2fe3b987e8..f1bfb87356b6dab98147d9bfd8b8107eb81488dc 100644 --- a/product/zh/docs-mtk/v2.0/commands/mtk_mig-select.md +++ b/product/zh/docs-mtk/v2.0/commands/mtk_mig-select.md @@ -4,6 +4,7 @@ summary: mtk mig-select author: mtk date: 2022-01-07 --- + ## mtk mig-select 自定义查询语句进行数据迁移. 导出成csv或者迁移一张表 @@ -24,6 +25,9 @@ mtk mig-select [flags] # mig select to table ./mtk -c mtk.json --sql "select 1 as col1,sysdate as col2, 'aaa' as col3 from dual" --tabName schema1.table1 + +# colName with spaces,tab, NBSP(Non-Breaking Space) +./mkt -c mtk.json --sql 'select "ID" AS "ID","ID1" AS "ID1"," COL1 " AS "COL1"," COL2 " AS " COL2"," COL 3 " AS " COL 3"," KEY_RECNO         " AS " KEY_RECNO" FROM MTK1."TEST_TABLE_2020415 "' ``` ### Options diff --git a/product/zh/docs-mtk/v2.0/mtk-config.md b/product/zh/docs-mtk/v2.0/mtk-config.md index ac6ee65c1ecb70c363ff4b07a78c25eaeed0f288..3a55be1f982eab77b1f3d058ae06f12bfe3b2544 100644 --- a/product/zh/docs-mtk/v2.0/mtk-config.md +++ b/product/zh/docs-mtk/v2.0/mtk-config.md @@ -864,6 +864,8 @@ Oracle查询语句中增加hint `/* +parallel(t,n) */` > schemas和tables参数互斥 > 如果两个参数都填入了值,在执行MTK时会遇到“mtk-1002 schema and table cannot exist together”错误 +> +> 没有定义迁移对象,则会报错 "not define Migrate object" ### schema diff --git a/product/zh/docs-mtk/v2.0/mtk-db2-to-mysql.md b/product/zh/docs-mtk/v2.0/mtk-db2-to-mysql.md index 51bece5595d8d9200df323fa6ecd7ada04f1787d..32d43f77412061510ac686d20d056935c26feea2 100644 --- a/product/zh/docs-mtk/v2.0/mtk-db2-to-mysql.md +++ b/product/zh/docs-mtk/v2.0/mtk-db2-to-mysql.md @@ -18,6 +18,10 @@ date: 2021-03-04 ## 注意事项 +## 名称 + +MySQL中表名、索引名、列名、约束名等不支持后缀带空格,mtk会自动截取右侧空格 + ### 空字符串和NULL问题 Db2和MySQL一样, NULL != `''` 无需处理 @@ -412,6 +416,9 @@ hehel --> \x686568656c #### 列默认值 - current timestamp -> current_timestamp +- date/time column + - MySQL 8.0.13 之前date/time列类型不支持默认值。 + - MySQL 8.0.13 之后可以用括号括起来 (current_date)/(current_time) ### 约束 diff --git a/product/zh/docs-mtk/v2.0/mtk-dsn.md b/product/zh/docs-mtk/v2.0/mtk-dsn.md index ff2052129dd27a1a5d91f74c8432afdabefcdfd3..bac785a1452641a939e1a8665be62d6f337355f3 100644 --- a/product/zh/docs-mtk/v2.0/mtk-dsn.md +++ b/product/zh/docs-mtk/v2.0/mtk-dsn.md @@ -7,7 +7,7 @@ date: 2021-03-04 # 数据源(DSN)说明 -## Oracle Cloud Autonomous Database +## Oracle 通常使用中,MTK配置文件中无需配置dsn键值,而是直接配置host,port,user,password键值即可。 @@ -63,3 +63,41 @@ or [Go DRiver for Oracle User Guide](https://godror.github.io/godror/doc/connection.html) [Oracle Database 19c Easy Connect Plus Configurable Database Connection Syntax](https://download.oracle.com/ocomdocs/global/Oracle-Net-19c-Easy-Connect-Plus.pdf) + +```json +{ + "dsn": "user=system password=pwd connectString=\"(DESCRIPTION=(CONNECT_TIMEOUT = 5)(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=127.0.0.1)(PORT=1521)))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=mtk)))\" configDir= connectionClass=godror enableEvents=0 externalAuth=0 heterogeneousPool=0 libDir= newPassword= noTimezoneCheck=0 poolIncrement=0 poolMaxSessions=100 poolMinSessions=0 poolSessionMaxLifetime=0s poolSessionTimeout=0s poolWaitTimeout=0s prelim=0 standaloneConnection=1 sysasm=0 sysdba=0 sysoper=0 timezone=" +} +``` + +## openGauss/MogDB/postgres + +```json +{ + "dsn": "application_name=mtk_postgres connect_timeout=5 dbname=postgres host=127.0.0.1 min_read_buffer_size=8388608 password=pwd port=5434 sslmode=disable user=gaussdb" +} +``` + +## MySQL + +```json +{ + "dsn": "root:pwd@tcp(127.0.0.1:3306)/mysql?loc=Local&multiStatements=true&timeout=30s&maxAllowedPacket=1073741824&charset=utf8mb4" +} +``` + +## DB2 + +```json +{ + "dsn": "ClientApplName=MTK;ConnectTimeout=5;DATABASE=testdb;HOSTNAME=127.0.0.1;PORT=50000;PWD=pwd;ProgramName=MTK;UID=db2inst1;XMLDeclaration=0" +} +``` + +## SQLServer + +```json +{ + "dsn": "sqlserver://sa:pwd@127.0.0.1:1433?app+name=mtk&connection+timeout=0&database=testdb" +} +``` diff --git a/product/zh/docs-mtk/v2.0/mtk-oracle-to-openGauss.md b/product/zh/docs-mtk/v2.0/mtk-oracle-to-openGauss.md index 45514dea2a09a789701315c30246ecbd43f9dd80..068985930d8778876474f33d03a38ce59efd2cd9 100644 --- a/product/zh/docs-mtk/v2.0/mtk-oracle-to-openGauss.md +++ b/product/zh/docs-mtk/v2.0/mtk-oracle-to-openGauss.md @@ -17,13 +17,15 @@ date: 2021-03-04 ## Oracle迁移用户权限 -迁移用户必须能访问DBA_*/ALL_*视图和查询迁移表权限. +迁移用户必须能访问`DBA_*`/`ALL_*`视图和查询迁移表权限. - connect - select any dictionary - select any table - select_catalog_role +> MTK 从 2.3.0 以后访问 `DBA_*`视图,不在查询`ALL_*`视图. + ## MTK Type 和oracle type 对应 对应 `DBA_OBJECT` 里的 `OBJECT_TYPE` @@ -87,6 +89,7 @@ date: 2021-03-04 - number interval -- invalid input syntax for type interval - 子分区openGauss暂时不支持 +- 物化视图的表不迁移,迁移物化视图 ### 空字符串和NULL问题 @@ -292,6 +295,14 @@ openGauss数据库系统列: ) ``` +### 同义词 + +不迁移DBLink下的同义词 + +```sql +SELECT OWNER,SYNONYM_NAME,TABLE_OWNER,TABLE_NAME FROM DBA_SYNONYMS WHERE DB_LINK IS NULL; +``` + ### Spatial 迁移 Oracle Spatial 以下参数可用 diff --git a/product/zh/docs-mtk/v2.0/mtk-usage.md b/product/zh/docs-mtk/v2.0/mtk-usage.md index 4ef5c1101dfaf7b402cd181edd5209be5d3a8c23..98df04b44cbb6f67f5c28dba759a1a1f036101e9 100644 --- a/product/zh/docs-mtk/v2.0/mtk-usage.md +++ b/product/zh/docs-mtk/v2.0/mtk-usage.md @@ -46,7 +46,7 @@ MTK 支持三种迁移方式. |./mtk mig-tab-pre -c mtk.json|[mig-tab-post](commands/mtk-mig_tab-post)| |./mtk mig-tab-pre -c mtk.json|[mig-tab-other](commands/mtk-mig_tab-other)| -3. 分布迁移 +3. 分步迁移 用户自行控制迁移整体逻辑. diff --git a/product/zh/docs-mtk/v2.0/release-notes.md b/product/zh/docs-mtk/v2.0/release-notes.md index 08517baeddf8fb514f2e4b7a6f0f14af2f3b6011..4a35ffb7a02e7121390fa0dd5e50458c5b87752a 100644 --- a/product/zh/docs-mtk/v2.0/release-notes.md +++ b/product/zh/docs-mtk/v2.0/release-notes.md @@ -7,6 +7,62 @@ date: 2021-09-17 # 发布记录 +## v2.3.0 + +2022-04-19 + +### MTK + +- [mtk_2.3.0_darwin_amd64.tar.gz](https://cdn-mogdb.enmotech.com/mtk/v2.3.0/mtk_2.3.0_darwin_amd64.tar.gz) +- [mtk_2.3.0_darwin_amd64_db2.tar.gz](https://cdn-mogdb.enmotech.com/mtk/v2.3.0/mtk_2.3.0_darwin_amd64_db2.tar.gz) +- [mtk_2.3.0_darwin_arm64.tar.gz](https://cdn-mogdb.enmotech.com/mtk/v2.3.0/mtk_2.3.0_darwin_arm64.tar.gz) +- [mtk_2.3.0_linux_amd64.tar.gz](https://cdn-mogdb.enmotech.com/mtk/v2.3.0/mtk_2.3.0_linux_amd64.tar.gz) +- [mtk_2.3.0_linux_amd64_db2.tar.gz](https://cdn-mogdb.enmotech.com/mtk/v2.3.0/mtk_2.3.0_linux_amd64_db2.tar.gz) +- [mtk_2.3.0_linux_arm64.tar.gz](https://cdn-mogdb.enmotech.com/mtk/v2.3.0/mtk_2.3.0_linux_arm64.tar.gz) +- [mtk_2.3.0_windows_amd64.tar.gz](https://cdn-mogdb.enmotech.com/mtk/v2.3.0/mtk_2.3.0_windows_amd64.tar.gz) +- [mtk_2.3.0_windows_amd64_db2.tar.gz](https://cdn-mogdb.enmotech.com/mtk/v2.3.0/mtk_2.3.0_windows_amd64_db2.tar.gz) +- [mtk_checksums.txt](https://cdn-mogdb.enmotech.com/mtk/v2.3.0/mtk_checksums.txt) + +### MTKD + +- [mtkd_2.3.0_linux_amd64.tar.gz](https://cdn-mogdb.enmotech.com/mtk/v2.3.0/mtkd_2.3.0_linux_amd64.tar.gz) +- [mtkd_2.3.0_linux_amd64_db2.tar.gz](https://cdn-mogdb.enmotech.com/mtk/v2.3.0/mtkd_2.3.0_linux_amd64_db2.tar.gz) +- [mtkd_2.3.0_linux_arm64.tar.gz](https://cdn-mogdb.enmotech.com/mtk/v2.3.0/mtkd_2.3.0_linux_arm64.tar.gz) + +### Bug Fixes + +- **DB2:** 迁移到 MySQL 对象名称右侧包含空格问题,MTK自动截取右侧空格 +- **DB2:** 迁移到 MySQL BLOB, TEXT, GEOMETRY or JSON column 不能包含默认值 +- **DB2:** 移除 DB2CODEPAGE 环境变量强制检查 +- **MTKD:** API 接口返回 400 问题 +- **MTKD:** 修改 `deleteUserId` 为 `deletedUserId`, `updateUserId` 为 `updatedUserId` +- **MySQL:** update 语法错误问题 +- **MySQL:** 转换 `interval` 语法问题 +- **MySQL:** 中文转换问题 +- **MySQL:** 函数没有`begin/end`语法问题 +- **MySQL:** 转换`join`语法问题 +- **MySQL:** 转换 `convert` to `cast` 语法问题 +- **Oracle:** 转换 package to og package 注释缺失问题 +- **Oracle:** 迁移到 MySQL 对象名称右侧包含空格问题,MTK自动截取右侧空格 +- **Oracle:** 转换insert语句包含return关键字问题 +- **Oracle:** 转换包里存储过程end没有存储过程名称问题 +- **Oracle:** 参数 `colKeyWords` 优先级问题 +- **Oracle:** 存储过程参数带注释问题 + +### Code Refactoring + +- **MTK:** 生存对象名称方法 + +### Features + +- **DB2:** 支持 DB2 `date/time` column 默认值 `current date/time` to MySQL `current_date/time` +- **MTKD:** 密码加密存储 +- **MySQL:** 转换注释 `#` to `--` +- **Oracle:** 替换查询视图`all_`为`dba_`视图 +- **Oracle:** 支持转换Insert语句带别名 +- **Oracle:** 支持转换中文符号 `(),`为英文 +- **openGauss:** 移除参数`check_function_bodies=off` + ## v2.2.5 2022-04-10