查看: 609|回复: 2

参数变量是否只能用于where子句

升级   0.04%

149

主题

189

回帖

4

积分

注册会员

Rank: 2

积分
4
发表于 2024-12-3 22:41:32 | 显示全部楼层 |阅读模式
简单的测试过,在其他的sql子句里无法使用到参数

希望管理员也测试下,是否如此

不用拼接,直接写到sql语句里,经测试发现只有where子句可以正确使用参数(不管是采用冒号+参数名,或是问号+数字),返回正确的结果
[AppleScript] 纯文本查看 复制代码
var sql="select :fieldList from view_zz_form where xname like :xname";

return sql;


测试反馈如下:
1、字段列表用参数:fieldList,则返回的结果集,将参数值当成列名处理了,而不是字段了

2、在order by子句里用参数,报错:
ORDER BY 编号 1 标识的 SELECT 项包含一个变量,作为标识列位置的表达式的一部分。按照引用列名的表达式排序时,只允许使用变量
{prepstmnt 627427216 select ? from view_zz_form where xname like ? order by ?} [code=1008, state=S0001]

3、在group by子句用参数,报错:
每个 GROUP BY 表达式必须至少包含一个不是外部引用的列。 {prepstmnt 1416793338 select formType,xappName,xname from view_zz_form where xname like ? group by ?} [code=164, state=S0001]

麻烦请管理员也测试下效果,谢谢!
回复

使用道具 举报

升级   100%

139

主题

1万

回帖

4万

积分

超级版主

Rank: 8Rank: 8

积分
41458
发表于 2024-12-4 11:04:03 | 显示全部楼层
参数只能用于where条件
回复

使用道具 举报

升级   0.11%

1

主题

9

回帖

11

积分

注册会员

Rank: 2

积分
11
发表于 2025-4-15 16:18:29 | 显示全部楼层
论坛管理员 发表于 2024-12-4 11:04
参数只能用于where条件

请问我想在流程启动前,弹出一个html生成的注意事项提示框,编写脚本时,使用this.from.dialog,提示cannot readproperty ‘dialog’of undefined,有什么可以解决办法吗?就是在点击新建流程前,弹出提示框,点击确定新建流程,点击取消则取消。
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

联系客服 关注微信 下载APP 返回顶部 返回列表
viewthread