sybase插入数据时使用查询语句报错

Nice Guy丶 2015-08-03 11:26:58
insert into TD_B_CONFIG (CONFIG_ID, CONFIGNAME, CONFIGDESC, PARAMNAME, VALUESEQ, PARAMVALUE, VALUEDESC, UPDATETIME, UPDATE_USER, RSRV_STR1, RSRV_STR2, RSRV_STR3, RSRV_DATE4, RSRV_DATE5)
values ((SELECT MAX(CONFIG_ID) +' 1' FROM TD_B_CONFIG), 'SMP_ACL_PLAN', 'ACL作业允许新开单数阀值', 'MAX_NUM_OF_NEW_PLAN', 0, '2', 'ACL作业允许新开单数阀值,默认2', convert(date,'2014-09-19'), 'sunxin', NULL, NULL, NULL, null, null)

报错信息是The name 'CONFIG_ID' is illegal in this contex.Only constants,constant expressions, or variables allowed here

我现在知道错误的语句应该是(SELECT MAX(CONFIG_ID) +' 1' FROM TD_B_CONFIG),我想知道该怎么解决
不要告诉我先手动查出SELECT MAX(CONFIG_ID) +' 1' FROM TD_B_CONFIG的值再插入数据,因为我有无数这样的插入语句,挨个修改值会累死
...全文
551 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
insert values括号里面是不能带结果集的。
  • 打赏
  • 举报
回复
改为insert into select 的形式啊。 insert into TD_B_CONFIG (CONFIG_ID, CONFIGNAME, CONFIGDESC, PARAMNAME, VALUESEQ, PARAMVALUE, VALUEDESC, UPDATETIME, UPDATE_USER, RSRV_STR1, RSRV_STR2, RSRV_STR3, RSRV_DATE4, RSRV_DATE5) select (SELECT MAX(CONFIG_ID) +' 1' FROM TD_B_CONFIG), 'SMP_ACL_PLAN', 'ACL作业允许新开单数阀值', 'MAX_NUM_OF_NEW_PLAN', 0, '2', 'ACL作业允许新开单数阀值,默认2', convert(date,'2014-09-19'), 'sunxin', NULL, NULL, NULL, null, null

2,596

社区成员

发帖
与我相关
我的任务
社区描述
Sybase相关技术讨论区
社区管理员
  • Sybase社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧