oracle8i中对clob的处理

今天发现oracle8i库中有一clob字段,就想将其变为varchar2,关键的问题就成了怎么保留数据的问题了,查了查oracle9i的文档,有个to_char方法,心中高兴,一试,却不好使,原来9i支持,8i不支持,郁闷。

向数据库方面的朋友寻求帮助,告知可以用两种方式:

1 DBMS_LOB.READ (

lob_loc IN CLOB CHARACTER SET ANY_CS,

amount IN OUT NOCOPY BINARY_INTEGER,

offset IN INTEGER,

buffer OUT VARCHAR2 CHARACTER SET lob_loc%CHARSET);

22-46 Supplied PL/SQL Packages and Types Reference

lob_loc Locator for the LOB to be read.

file_loc The file locator for the LOB to be examined.

Summary of DBMS_LOB Subprograms

amount Number of bytes (for BLOBs) or characters (for CLOBs) to read, or

number that were read.

offset Offset in bytes (for BLOBs) or characters (for CLOBs) from the start of

the LOB (origin: 1).

buffer Output buffer for the read operation

2

DBMS_LOB.SUBSTR (

lob_loc IN CLOB CHARACTER SET ANY_CS,

amount IN INTEGER := 32767,

offset IN INTEGER := 1)

RETURN VARCHAR2 CHARACTER SET lob_loc%CHARSET;

 

才知道,还有DBMS_LOB这个包啊,拿来一试,发现DBMS_LOB.SUBSTR在8i中好用,READ好像还是不行,呵呵,不过问题是解决了。

DBMS_LOB.SUBSTR (

lob_loc IN CLOB CHARACTER SET ANY_CS,

amount IN INTEGER := 32767,

offset IN INTEGER := 1)

RETURN VARCHAR2 CHARACTER SET lob_loc%CHARSET;

 

才知道,还有DBMS_LOB这个包啊,拿来一试,发现DBMS_LOB.SUBSTR在8i中好用,READ好像还是不行,呵呵,不过问题是解决了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值