更新时间:2025-06-30 GMT+08:00

其他语句

表1 其他语法兼容介绍

概述

详细语法说明

差异

锁机制

锁机制

  • GaussDB数据库锁机制只能在事务块中使用,MySQL无限制。
  • MySQL获取read锁后,当前会话无法进行写操作,GaussDB数据库获取read锁后,当前会话可以进行写操作。
  • MySQL给表上锁后,读取其他表报错,GaussDB数据库无限制。
  • MySQL同一会话中获取同一个表的锁,会自动释放上一个锁,并提交事务,GaussDB数据库无该机制。
  • GaussDB数据库中LOCK TABLE只能在一个事务块的内部有用,且无UNLOCK TABLE命令,锁总是在事务结束时释放。

PBE

PBE

  • 重复创建同名的PREPARE语句,GaussDB数据库会报已经存在的错误,需要先删除已有statement,MySQL会覆盖旧的statement。
  • GaussDB数据库和MySQL在SQL语句执行过程中对异常场景的报错阶段不同,例如解析层、执行层等;而PREPARE语句对预备语句只处理到解析层。因此PBE下对于异常场景,报错位置在PREPARE阶段还是EXECUTE阶段,GaussDB数据库和MySQL存在可能差异。

单行注释语法

单行注释语法

单行注释语法仅在设置参数m_format_behavior_compat_options包含'forbid_none_space_comment'项后注释行为与MySQL一致。