参考文档: How to Convert a Long to Varchar2 (文档 ID 228532.1) /*long类型字段转换成varchar2类型*/ --建表 create table dxmy_long(lon long,var varchar2(100 )); --插数 insert into dxmy_long values( '丹心','明月' ); commit; --查看 declare v1 varchar2(100 ); begin select lon into v1 from dxmy_long; dbms_output.put_line(v1); end; 丹心 --将lon数据存到var中 declare v1 varchar2(100 ); begin select lon into v1 from dxmy_long; dbms_output.put_line(v1); update dxmy_long set var = v1; commit; end; --查证 select * from dxmy_long; LON VAR -------------------------------------------------------------------------------- -------------------------------------------------------------------------------- 丹心 丹心 --如果有多行需要转换 insert into dxmy_long values( '丹心','明月' ); insert into dxmy_long values( '丹心','明月' ); insert into dxmy_long values( '丹心','明月' ); insert into dxmy_long values( '丹心','明月' ); insert into dxmy_long values( '丹心','明月' ); insert into dxmy_long values( '丹心','明月' ); insert into dxmy_long values( '丹心','明月' ); insert into dxmy_long values( '丹心','明月' ); insert into dxmy_long values( '丹心','明月' ); commit; declare v1 varchar2( 100); CURSOR c_Select IS select lon from dxmy_long; begin Open c_Select; LOOP Fetch c_Select into v1; Exit when c_Select%NOTFOUND; update dxmy_long set var = v1; END LOOP; commit; Close c_Select; END; --查证 SQL> select * from dxmy_long; LON VAR -------------------------------------------------------------------------------- -------------------------------------------------------------------------------- 丹心 丹心 丹心 丹心 丹心 丹心 丹心 丹心 丹心 丹心 丹心 丹心 丹心 丹心 丹心 丹心 丹心 丹心 丹心 丹心 10 rows selected
时间: 2024-10-18 10:32:57