把用户名里的@识别成关联的了
CREATE DEFINER = root
@mq_t1@%
版本:
OceanBase_CE 4.3.5.0
这里用单引号试试
CREATE DEFINER = ‘root@mq_t1’@’%’ PROCEDURE
这样试了也不行的
原sql发下
CREATE DEFINER = root
@%
PROCEDURE createLiebiaoyuju
(IN sqlQuery VARCHAR(4000) , IN yewuid INT)
MODIFIES SQL DATA
BEGIN
DECLARE _sql TEXT;
-- 构建动态SQL
SET _sql = CONCAT('SELECT * INTO TEMPORARY TABLE shitu FROM (', sqlQuery,') AS derived_table');
-- 检查条件并更新
IF EXISTS(SELECT 1 FROM temp_shitu WHERE (liebiaoyuju IS NULL OR liebiaoyuju = '')) THEN
UPDATE yewudangan SET liebiaoyuju = _sql
WHERE id = yewuid;
END IF;
1 个赞
按下面这种试试:
definer = root@%
1 个赞
这个语句应该没有问题哈