set serverout on ;
设置允许输出

解决方案 »

  1.   

    1.输出
    ---设置允许输出
    SQL>set serverout on ;
    2.没更新是因为你没在存储过程里加commit;语句
      

  2.   

    哦? 我执行完了之后在 存储过程外面加commint不行吗?
      

  3.   

    看来写的有问题啊还是怎么了
    其实业务很简单啊,不过加了commit还是没有更新哦
      

  4.   

    晕,我把query_str  打印了一下,竟然是空啊, 给我看看什么问题啊,救命
      

  5.   

    if cl%notfound then      
       query_str := 'update table '||tableName.table_name||' set vendor_id = '''||vendor_Id||''' where vendor_id = '''||vendor_Id2||'''';
    这句看来根本就没执行!但是 cursor cl is select table_name from user_tab_columns m where m.COLUMN_NAME=columnName;
    cursor定义的SQL绝对有值啊!我把参数换过去执行有值哦
      

  6.   

    if cl%notfound then 
    因为只有找不到数据的时候才会执行
    query_str := 'update table '||tableName.table_name||' set vendor_id = '''||vendor_Id||''' where vendor_id = '''||vendor_Id2||'''';楼主的意思应该是找到了就执行么?
    if cl%found then