我有两个变量
MAX_TABLE_ID INTEGER;
NEXT_TABLE_ID INTEGER;
我正在读取这些值,然后尝试根据它们改变序列
EXECUTE IMMEDIATE 'ALTER SEQUENCE NEXT_VALIDATED_TABLE_ID INCREMENT BY [MAX_TABLE_ID-NEXT_TABLE_ID]';
我收到“无效号码”错误或SQL命令未结束错误。
如果我尝试硬编码
,甚至会发生这种情况ALTER SEQUENCE NEXT_VALIDATED_TABLE_ID INCREMENT BY 100-1; or
ALTER SEQUENCE NEXT_VALIDATED_TABLE_ID INCREMENT BY [100-1];
我错过了一些明显的东西
答案 0 :(得分:3)
我会尝试在文字之外进行计算,例如
EXECUTE IMMEDIATE 'ALTER SEQUENCE NEXT_VALIDATED_TABLE_ID INCREMENT BY ' || MAX_TABLE_ID-NEXT_TABLE_ID;