相关疑难解决方法(0)

如何在Oracle 11g中存储无限制的字符?

我们在Oracle 11g中有一个带有varchar2列的表.我们使用专有的编程语言,其中此列定义为字符串.最大值我们可以在此列中存储2000个字符(4000个字节).现在要求是列需要存储超过2000个字符(实际上是无限字符).出于维护原因,DBA不喜欢BLOB或LONG数据类型.

我能想到的解决方案是从原始表中删除此列,并为此列创建一个单独的表,然后将每个字符存储在一行中,以获得无限制的字符.此tble将与原始表连接以进行查询.

有没有更好的解决方案来解决这个问题?

更新:专有编程语言允许定义string和blob类型的变量,没有CLOB选项.我理解给出的回复,但我无法接受DBA.我明白偏离BLOB或LONG将是开发人员的噩梦,但仍然无法帮助它.

更新2:如果我需要的最大值是8000个字符,我可以再添加3个列,这样我就会有4个列,每个列有2000个字符,可以获得8000个字符.因此,当第一列填满时,值将溢出到下一列,依此类推.这个设计会有什么不好的副作用吗?请建议.

oracle types blob clob oracle11g

12
推荐指数
3
解决办法
4万
查看次数

标签 统计

blob ×1

clob ×1

oracle ×1

oracle11g ×1

types ×1