有一张表device_info,表中只有一个字段id定义为number
另外在程序中定义一变量sID定义为int,由于sID是变量。该如何把该变量插入表device_info中
insert into device_info values(sID);
以上语句报错。
请问正确的语句怎么写?

解决方案 »

  1.   

    execute immediate 'insert into device_info values('||sID||')';
      

  2.   


    begin
    execute immediate 'insert into device_info values('||sID||')';
    end;
      

  3.   

    楼主你应该说明一下你的sql语句是在存储过程中,还是在其他语言中嵌套使用的,还有你用的什么类型数据库?!都说明一下大家才能给你提供参考。
    如果在过程中这个写法就没有问题;
    如果在其他语言中嵌套你就查看其他语言语法,如何嵌套sql。
      

  4.   

    首先得知道你用的语言是什么
    还有 sql报什么错?你是在plsql中执行的吗?
    sID是程序变量,不能这么往sql里放吧 怎么也得组装一下
    int类型插入number型是没问题的 可能你的sql组装的有问题
      

  5.   

    我用jsp编一个自己用的网站。获取页面输入值然后插入数据库。
    数据库是oracle,开发平台是Myeclipse。
      

  6.   

    3楼,4楼大哥,试了你们方法。还是不行啊。报错:java.sql.SQLException: ORA-01722: 无效数字
      

  7.   

    我也遇到类似的问题,是用SQL语句,如何将整型变量插入到Oracle数据库表中?1,2均可以,怎么变成int变量就不行了?