
# 目标数据库是否存在与源数据库同名的对象
#### MySQL-\>PostgreSQL同步场景
表1目标数据库是否存在与源数据库同名的对象 
|          **预检查项**           |                                                                     目标数据库是否存在与源数据库同名的对象。                                                                     |
|---|---|
| ****描述****                  | 校验用户提供的目标数据库是否存在与源数据库同名的表，避免已存在的表被覆盖。若存在，则无法迁移。                                                                                                              |
| ****不通过提示** **及**处理建议****** | **不通过原因**：目标数据库存在与源数据库同名的表。 **处理建议**：请先检查目标数据库的这些同名表是否需要保留，然后删除同名表或者使用新的目标库再重试。 |
| ****不通过提示** **及**处理建议****** | **不通过原因**：目标数据库存在与对象编辑新增的表同名的表。 **处理建议**：请先检查目标数据库的这些同名表是否需要保留，然后删除同名表或者重新进行对象编辑。   |
   
#### Oracle-\>PostgreSQL同步场景
表2目标数据库是否存在与源数据库同名的对象 
|          **预检查项**           |                                                                                                                                                                                                                                                              目标数据库是否存在与源数据库同名的对象。                                                                                                                                                                                                                                                              |
|---|---|
| ****描述****                  | 校验用户提供的目标数据库是否存在与源数据库同名的对象。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| ****不通过提示** **及**处理建议****** | **不通过原因**：目标库中存在要同步表的数据和索引。 **处理建议**：删除目标库表中的数据和索引，否则可能会导致数据不一致。 - 清空表中数据语句参考： ``` TRUNCATE TABLE table_name1; ```   - 删除索引语句参考： ``` DROP INDEX index_name ; ```    |
| ****不通过提示** **及**处理建议****** | **不通过原因**：源数据库存在加密的数据库对象。 **处理建议**：返回对象选择页面，选择没有加密的数据库对象。                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| ****不通过提示** **及**处理建议****** | **不通过原因**：部分表无法同步，这些表的特征为：表名称的字母相同但大小写不同。 **处理建议**：建议修改表名或者返回对象选择页面，不同步这些重名表。修改表名语句参考： ``` ALTER TABLE old_table_name RENAME TO new_table_name; ```                                                                                                                                                                                                                                                                                               |
   
#### Microsoft SQL Server为源同步场景
表3目标数据库是否存在与源数据库同名的对象 
|                                         **预检查项**                                          |                                                                                                                                                                                      目标数据库是否存在与源数据库同名的对象。                                                                                                                                                                                      |
|---|---|
| ****描述****                                                                                | 校验用户提供的目标数据库是否存在与源数据库同名的对象。 - 选择同步表结构的情况下，目标库不能存在与源数据库同名的。  - 不选择同步表结构的情况下，目标库需提前创建对应的表结构。   |
| ****不通过提示** **及**处理建议****  ** | **不通过原因**：目标库表不存在，无法进行同步。 **处理建议**：不同步表结构时，目标库上需提前创建表或者选择同步表结构。 目标库建表语句参考： ``` CREATE TABLE table_name (column_name data_type); ```                                                                                                                  |
| ****不通过提示** **及**处理建议****  ** | **不通过原因**：需要同步的表在目标库的映射已存在。 **处理建议：**返回同步设置中，重新选择其他表进行同步，或者修改表映射名称                                                                                                                                                                                                                                                                            |
| ****不通过提示** **及**处理建议****  ** | **不通过原因：**需要同步的映射表在目标库中不存在。 **处理建议：**勾选同步表结构以创建库表，或者在目标库中创建对应的表结构，若已创建，请检查规定的映射名称是否正确。                                                                                                                                                                                                                                                         |
   
#### PostgreSQL-\>PostgreSQL表级同步场景
表4目标数据库是否存在与源数据库同名的对象 
|          **预检查项**           |                                                                       目标数据库是否存在与源数据库同名的对象。                                                                       |
|---|---|
| ****描述****                  | 校验用户提供的目标数据库是否存在与源数据库同名的对象。若存在，则无法迁移。                                                                                                                            |
| ****不通过提示** **及**处理建议****** | **不通过原因**：目标数据库存在与源数据库同名的对象。 **处理建议**：请先检查目标数据库的这些同名对象是否需要保留，然后删除同名对象或者使用新的目标库再重试。 |
   
