为动态表执行即时iNSERT问题

时间:2013-02-12 07:49:17

标签: sql oracle plsql insert

我正在研究oracle sql

我正在尝试创建动态表 和 我想在动态表中插入一些值(“s”是变量名称)

我试图使用......

 execute immediate 'INSERT INTO t'||tbcounter||'(column1, column2) VALUES (s, s)';

然而,我收到错误

ORA-00926: missing VALUES keyword

我猜是有语法错误..

但我不确定代码中的错误..

有人知道代码中的错误吗?

感谢

编辑:

我刚刚解决了问题。插入应该是

 sql_stmt := 'INSERT INTO t'||tbcounter||' VALUES (:1, :2)';
       EXECUTE IMMEDIATE sql_stmt USING s, s;

1 个答案:

答案 0 :(得分:1)

试试这个:

execute immediate 'INSERT INTO t'||tbcounter||' (column1, column2) VALUES (' || s || ' , ' s || ' )'  ;

IS tbcounter是表名。