为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。
【DM版本】:DM8
【操作系统】:CentOs7.6
【CPU】:
【问题描述】*:我需要在达梦数据库中创建一个函数,在函数中需要执行类似oracle数据库中select max_value from sys_seq where id='2001' for update这种语法,用来获取表中数据id为2001的这行数据中列为‘max_value’的值,然后经过处理后可能会对此列的值进行增加,然后覆盖新的值到此列上,锁定也是为了在当前会话执行函数前其他会话如果执行此函数需要等待我执行完后在进行操作。但是我创建函数后,执行函数提示我如下错误:
-7145: 无法在查询中执行DML操作
-7145: FN_XXCJ_XXZJBH line 17
请教一下需要如何处理。
1,函数中需要加上自治事务的声明解决该问题
2.达梦支持 select from for update