Oracle数据库数据恢复、性能优化

找回密码
注册
搜索
热搜: 活动 交友 discuz
发新帖

5

积分

0

好友

3

主题
1#
发表于 2014-7-14 14:39:18 | 查看: 4436| 回复: 3
OS:Oracle Linux 5.9 x64
数据库:11.2.0.3

执行以下insert语句:
  1. INSERT INTO MAKEPZ_FL_ZY select MODE_ID,FL_INX,ZYJC,ZYTEXT,ZYFIELD,USE_FLSQL,TO_LOB(ZYSQLTEXT) from MAKEPZ_FL_ZY@ERP_CS;
  2. INSERT INTO MAKEPZ_FL_ZY select MODE_ID,FL_INX,ZYJC,ZYTEXT,ZYFIELD,USE_FLSQL,TO_LOB(ZYSQLTEXT) from MAKEPZ_FL_ZY@ERP_CS
  3.                                                                                                     *
  4. ERROR at line 1:
  5. ORA-00997: illegal use of LONG datatype
复制代码
表结构:
  1. SQL> desc MAKEPZ_FL_ZY
  2. Name                                      Null?    Type
  3. ----------------------------------------- -------- ----------------------------
  4. MODE_ID                                   NOT NULL NUMBER(10)
  5. FL_INX                                    NOT NULL NUMBER(5)
  6. ZYJC                                      NOT NULL NUMBER(3)
  7. ZYTEXT                                             VARCHAR2(20)
  8. ZYFIELD                                            VARCHAR2(10)
  9. USE_FLSQL                                 NOT NULL NUMBER(1)
  10. ZYSQLTEXT                                          LONG
复制代码
google了一些帖子,说是加了to_lob,但加上后仍出ORA-00997,请问该如何解决?
4#
发表于 2014-7-14 21:35:29
不修改表结构,那可以创建新表吗?如果可以的话新创建的表把字段类型更改了。然后把原表重命名。之后把新表命成和原表一样的名字,再执行插入操作就可以了。

回复 只看该作者 道具 举报

3#
发表于 2014-7-14 14:44:09
表结构不能修改的话,有没有别的办法。

回复 只看该作者 道具 举报

2#
发表于 2014-7-14 14:43:13
可以修改表结构的话,直接换成clob吧!

回复 只看该作者 道具 举报

您需要登录后才可以回帖 登录 | 注册

QQ|手机版|Archiver|Oracle数据库数据恢复、性能优化

GMT+8, 2024-12-21 06:24 , Processed in 0.045439 second(s), 21 queries .

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

回顶部
TEL/電話+86 13764045638
Email service@parnassusdata.com
QQ 47079569