OpenEdge多租户数据库ODBC更新:如何指定特定租户?
OpenEdge多租户数据库特定租户更新语句修正
你遇到的问题是更新语句的语法细节有误,调整后即可实现特定租户的字段更新:
正确的更新语句
UPDATE PUB."SysCtrl" AS mtc SET "LogiVal" = '1' WHERE tenantName_tbl(mtc) = 'tenantID' AND "ParamId" = 'AccoGrpProd'
错误点说明
- 多余括号:原语句中
('tenantID')的括号是不必要的,直接写字符串值'tenantID'即可,OpenEdge对这种写法会解析异常 - 字段名引号:SET子句中的
LogiVal需要和查询语句一致,用双引号包裹——OpenEdge区分大小写,未加引号会被识别为大写的LOGIVAL,可能匹配不到目标字段
验证步骤
- 先执行你的查询语句确认目标记录存在:
SELECT "LogiVal" FROM PUB."SysCtrl" AS mtc WHERE tenantName_tbl(mtc) = 'tenantID' AND "ParamId" = 'AccoGrpProd'
- 执行修正后的更新语句
- 再次执行查询语句,确认
LogiVal已更新为'1'
内容的提问来源于stack exchange,提问作者Leluloota
相关产品推荐
相关产品推荐

