2010-08-03 85 views
0

我有,其中有LONG类型的字段(最大容量2GB)的老oracle数据库问题与LONG甲骨文

现在早些时候它用于工作,我们开始把罚款,但随着时间的推移数据的大小远远超过2GB,所以我们开始面临麻烦。

我无法将字段类型从LONG更改为CLOB,因为这会产生很多麻烦,因为必须对产品进行无数的更改才能处理CLOB类型。

将数据分成块然后放入是一个选项,但我们该怎么做?

有人可以提出一种方法来处理这个问题。最好是代码或代码的链接。

+1

您正在使用哪个版本的Oracle? – 2010-08-03 10:37:57

+0

我正在使用10g ................. – Egalitarian 2010-08-04 06:23:26

回答

2

问题是,您无法将超过2GB的值传递给LONG变量。所以,你的应用程序有两种选择:

  • 触摸数据库
  • 发送数据库中的CLOB和让数据库处理之前,大数据分割成块(有图说和INSTEAD OF触发器)

哪种方法最适合你,取决于你的应用程序的细节。给我们更多的信息,我们可以给你具体的建议。

其实第三个选项。 LONG和LONG RAW数据类型已被弃用十多年。也许是时候继续...

+0

我正在使用ORACLE 10g ................. – Egalitarian 2010-08-04 12:17:24

+0

@Egalitarian - All这告诉我你是应该很久以前咬过子弹并转移到CLOB的。它是*详细信息*,而不是“应用程序的详细信息”。你的应用程序用这些大量数据做什么?它如何与数据库交互?它是用什么语言写的? – APC 2010-08-04 12:44:19