用oracle写了个过程。
如下:
create or replace procedure proc_updateGeography1
is
 cursor mycursor is select * from PEC_ZONES_ZIP_CODE;
 theRow mycursor%rowType;
 strWhere varchar2(40);
begin
 for theRow in mycursor loop 
  update company set GEOGRAPHY = theRow.pec_zones_id where zip ike '%'||theRow.zip_code || '%';
 end loop;
end;
   
  存储过程中有一个变量 theRow.zip_code 
  我想用它来作为查询条件,写在like后面,   
  我在网上查了好多资料,有的说就现在这个方式就可以,
   有的说可以在之前先把%号拼装到变量里 如:strWhere := chr(39) || theRow.zip_code || '%' || chr(39);
  然后写在like后面也可以了,如:..... like strWhere .....
  这两种方式我都试过了,执行正常结束,可是一条都没有更新!!
 开始我还以为是表里的数据没有匹配的呢!!然后我就特意加了两条测试数据,最终没有被更新!!!
 我都愁死了,已经三天了,一直没有找到好的办法解决!!
这是什么原因啊1????各位老大?????小弟先谢了!!