转换智能化
立足自研模型,降低数据库切换成本
日常场景处理
● 数据定义语句等效转换
涵盖增删改数据库、表、字段类型、索引、视图、函数、存储过程、触发器等,确保数据定义操作在不同数据库间无缝转换
● 增删改查语句等效转换
无论语句长度多长、嵌套多复杂,都能精准实现等效转换,满足各类数据操作需求
● 函数等效转换
全部聚合函数、字符函数、日期函数、数学函数、Pivot函数等可实现等效转换,维持数据处理逻辑一致性
● 窗口函数与Top语句等效转换
窗口函数、Top语句在跨数据库时能准确转换,保障数据查询与分析的有效性
逻辑与流程处理
● 控制语句等效转换
条件判断、普通循环、游标循环、递归循环、控制跳转goto语句等都能等效转换,保障程序逻辑完整重现
● 错误处理等效转换
RaiseError函数、try.catch捕获错误处理的等效转换,保障系统面对异常能正确响应
● SQL脚本中条件、循环等语句转换处理
针对MySQL和SQL SERVER在条件判断、循环语句使用场景差异,自动封装临时存储过程进行转换调用,调用完自动销毁
复杂场景处理
● 特殊函数等效转换
Call、exec、execute、sp_executesql、Nullif、checkindent、col_length、object_id、dbreindex、scope_identity、ident_current函数都能完成等效转换,确保相关功能稳定运行
● 动态 SQL 语句等效转换
利用拼接字符串构建的行转列语句或任意复杂拼装的动态 SQL 语句均可等效转换,无需重新构思和编写
● 临时表转换与清理
局部临时表语句等效转换,全局临时表自动转换为模拟一个TempDB数据库管理的物理表,并配合定时任务清理过期临时表,优化数据库性能
● 全局变量等效转换
全局变量@@Identity、@@rowcount的等效转换,辅助开发人员准确获取操作信息
特殊场景处理
● 元数据表查询语句等效转换
针对sysobjects、sysindex、syscolumns、sysdatabases等元数据表查询语句的转换,便于准确知晓数据库内部的构成情况
● 复杂语句等效转换
With Rollup、For XML Path语句转换后,满足数据统计与交换需求
● 行级锁语句等效转换
行级锁With(updlock)语句转换,在多数据库协同工作场景下确保并发控制机制的有效性
● 自定义函数调用转换
调用用户自定义函数的语句能转换输出同名函数及适配后的函数参数组合,节省开发成本