作者:任仲禹目录
爱可生 DBA 团队成员,擅长故障分析和性能优化,文章相关技术问题,欢迎大家一起讨论。
本文来源:原创投稿
*爱可生开源社区出品,原创内容未经授权不得随意使用,转载请联系小编并注明来源。
- 前?
- DDL语句审核
- DCL语句审核
- DML语句审核
- DDL与DML上下?关联
- 结论
- SQLE版本:sqle-ce-1.2203.0
- MySQL版本:MySQL 8.0.28
- 环境安装过程:略
文章图片
审核结果如下图。
文章图片
- ?结
- 审核结果基本没啥问题,不符合建表规则和命名规范的问题SQLE将正常甩出错误。
- 下?2条SQL示例,?条为语法?误、?条为语法错误(含MySQL保留关键字)。
文章图片
如下图审核结果,第?条
rank
表 其实与预期结果不符合,SQLE应该甩出报错。文章图片
正常的审核结果应该跟下图?样甩出错误。
文章图片
- ?结
- 上述审核结果不?样的原因在于,order、rank 虽然同属于MySQL 8.0的保留关键字,但 rank 是8.0版本新增的,当前SQLE的审核规则中关键字库估计需要更新。
- 注意:该rank建表语句虽能通过审核,但上线仍然会失败。
文章图片
文章图片
审核结果如下图。
文章图片
- ?结
- 审核结果基本没啥问题,不符合索引、字段创建规则的问题SQLE将正常甩出错误。
- 下?2条SQL示例,?条为创建索引,?条为将索引修改为不可?(禁?)状态。
文章图片
文章图片
正常的的审核结果应该为
?问题
,该语句 MySQL 中执?如下图所示。文章图片
- ?结
审核结果不符合预期的原因,应该是该ALTER TABLE ... ALTER INDEX ...
语法为8.0新增,?前SQLE暂时还未加?解析器。
1. 测试set命令示例语句如下。
文章图片
但是也有可能会有?法审核的命令,如下图所示。
文章图片
审核结果如下图,第2条语句审核结果不符合预期。
文章图片
正常的审核结果应为
?问题
,该语句MySQL中执?如下图所示。文章图片
- ?结
- 审核结果不符合预期的原因,应该是该
set persist ...
语法为8.0新增,?前SQLE暂时还未加?解析器。
- 审核结果不符合预期的原因,应该是该
文章图片
审核结果如下图。
文章图片
- ?结
- 审核结果基本没啥问题,?户和??创建与授权语句能被SQLE正确识别。
文章图片
审核结果如下图。
文章图片
- ?结
- 审核结果基本没啥问题,不符合DML规范的问题SQLE将正常甩出错误。
2.测试select语句如下。
文章图片
审核结果如下图。
文章图片
- 审核结果基本没啥问题,不符合DML规范的问题SQLE将正常甩出错误。
- ?结
- 审核结果基本没啥问题,SQLE将不符合SQL开发规范的问题正常甩出。
1. 测试语句?。
文章图片
审核结果如下图。
文章图片
- ?结
- 审核结果符合预期,SQLE能够识别新加的列与?中的数据插?语句相关联。
文章图片
审核结果如下图。
文章图片
- ?结
- 审核结果符合预期,不相关联的DML语句,SQLE能够识别出并刷出报错。
文章图片
审核结果如下图。
文章图片
语句在MySQL正常执?如下图。
文章图片
- ?结
- 除了MySQL 8.0 JSON新特性(如 JSON_TABLE?法),其它JSON语法和MySQL 5.7?样,SQLE仍然?持。
- 本?测试了SQLE对MySQL 8.0.28的?持程度,根据测试结果,?部分DDL、DML和DCL语句与MySQL 5.7版本?样,都能正常进?审核,DML和DDL上下?关联能够正确识别。
- 【SQL审核 | SQLE 兼容 MySQL 8.0 测评】少数MySQL8.0 新特性涉及的SQL?前SQLE可能还不能兼容,例如
- 建表时存在 MySQL 8.0 新的保留字,如窗?函数相关的RANK、ROW_NUMBER等。
ALTER TABLE ... ALTER INDEX ...
语法set persist ...
语法- JSON_TABLE函数等
- 总之,瑕不掩瑜,不兼容的点毕竟?常SQL开发审核上线中极少使?,相信后续SQLE版本将进?优化。
推荐阅读
- Mysql刷题|【sql】SQL4 查找所有已经分配部门的员工的last_name和first_name以及dept_no
- 《高性能|高性能 MySQL(七)(11个高性能的索引策略)
- MySQL|MySQL 8.0 下载、安装和配置(Linux 版)(使用 Yum Repository 方式)
- AngularJS SQL介绍和用法示例
- Python MySQL如何使用更新查询()
- MySQL中的EXP()函数用法详细介绍
- openGauss核心技术|openGauss AI能力升级,打造全新的AI-Native数据库
- 学习|使用c语言对sql server进行增删改查操作
- 数据库|破解数据库内核人才困局(PingCAP 的思考与尝试丨Talent Plan 专访)