请教,表名变量问题

mgx_xy 2007-09-28 12:58:37
在存储过程中,
实现功能:
insert into rec_total
select x,x,x,x,x
from rec_200708
表说明:
rec_200708 这张表每个月表名改变一次,如九月时变为 rec_200709 十月时为rec_200710

我曾经尝试过用
let t_tablename = 'rec_'||to_char(current,'%Y%d');
let t_sql = 'insert into rec_total select x,x,x,x,x from '||t_tablename;
execute t_sql;(或excute immediate t_sql等),但是一直报错
是不是没有这种表达法啊? 有的话该怎样解决呢?如没有,像上面的又该如何处理呢?
请各位大侠不吝赐教
...全文
107 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
flybadegg 2007-10-03
  • 打赏
  • 举报
回复
同意楼上,为什么不在表里加个月份字段呢?
这样每个月取数据的语句就可以一样了,仅仅是加个where语句,where语句里月份变量的值不一样而已
甚至月份都可以从其他表里某个字段中取得
neulx 2007-09-30
  • 打赏
  • 举报
回复
表名一个月改一次,真是个奇怪的解决方案,能说说当初为什么怎么考虑呢?
shao99 2007-09-30
  • 打赏
  • 举报
回复
支持prepare吗,支持的话就可以做到了
xxyyy 2007-09-29
  • 打赏
  • 举报
回复
存储过程不支持动态sql

1,194

社区成员

发帖
与我相关
我的任务
社区描述
其他数据库开发 Informix
社区管理员
  • Informix社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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