sql - Teradata 解析器弄乱了查询
问题描述
我在存储过程中有一个更新查询,如下所示
UPDATE tablename
SET column = v_col,
column1 = v_col2,
..
..
WHERE seq_num = v_seq_num
存储过程 seq_num 有一个输入变量匹配表的列名。在运行时代码变为
UPDATE tablename FROM tablename
SET column = :var1,
column1 = :var2,
..
..
WHERE :var12 = :var13
它假定 where 子句中的 seq_num 作为变量,并且查询给出假脱机空间错误,因为它从表名更新表名。目前我无法更改输入变量名称,因为它需要大量代码更改。有解决办法吗?有谁知道这里发生了什么?我正在考虑写 WHERE tablename.seq_num = v_seq_num。
请指教。
谢谢
解决方案
推荐阅读
- json - 如何递归搜索与给定模式匹配的所有节点的 JSON 文件并将 JSON“路径”返回到节点及其值?
- javascript - 为什么我的变量在 VS Code 中被划掉了?
- python - 如何在 wxpython GUI 中开发类似组件的图块?
- java - 嵌套 if 语句无法正常运行
- typescript - '(Node & ParentNode) | 类型的参数 null' 不可分配给“元素”类型的参数。类型“null”不可分配给类型“元素”
- reactjs - docker化react应用的原因
- python-3.x - 多行二进制文件逐行读取并在python中转换为char
- firebase - 授权码授予:将令牌发送给客户端是否安全?
- azure-data-explorer - 将范围运算符 columnName 作为参数传递给 Kusto 中的自定义函数
- operating-system - 分配前零页的原因是什么?