利用SQL *Plus复制遗留的Oracle数据表

kimi金池

kimi金池

2016-02-19 14:40

今天天气好晴朗处处好风光,好天气好开始,图老师又来和大家分享啦。下面给大家推荐利用SQL *Plus复制遗留的Oracle数据表,希望大家看完后也有个好心情,快快行动吧!

你可能运行的是Oracle 10g Release 2数据库服务器,但是需要支持某些应用程序可能是很早之前写好的。在Oracle 8i之前的版本创建的数据表常用LONG数据类型来存储大型文本。 随着Large Object(LOB)数据类型的引入,LONG和LONG RAW数据类型就被抛弃了。假如你要复制使用了LONG数据类型的数据表,那么使用CREATE TABLE AS SELECT语法将不能完成任务,这时将会返回错误:ORA-00997: illegal use of LONG 数据类型。 你可以导出该表然后再导入它,但是这样要做大量的工作。SQL*PLUS中的COPY命令仍然可以使用一条命令来完成对此类数据表的复制。下面是使用COPY命令的格式(注重使用短线“-”来换行):
COPY FROM user/pw@dblink TO user/pw@dblink CREATE tablename - USING select-statement;

不过在Oracle 8.0版本COPY命令的功能被冻结,因为它只能复制有下列数据类型组成的数据表:CHAR,DATE,LONG,NUMBER和VARCHAR2。在8i版本中增加了新的数据类型而后者不支持,这完全是一个继续的方法。
SQL CREATE TABLE my_views AS 2 SELECT * FROM user_views; SELECT * FROM user_views * ERROR at line 2: ORA-00997: illegal use of LONG datatype SQL SET LONG 100000 SQL COPY FROM hr/hr@orcl CREATE my_views - USING select * from user_views; Array fetch/bind size is 15. (arraysize is 15)Will commit when done. (copycommit is 0) Maximum long size is 100000. (long is 100000) Table MY_VIEWS created. 1 rows selected from hr@orcl. 1 rows inserted into MY_VIEWS. 1 rows committed into MY_VIEWS at DEFAULT HOST connection. SQL descmy_views; Name Null? Type ---------------------- ------------------- -------- ------- --------------------- VIEW_NAME NOT NULL VARCHAR2(30) TEXT_LENGTH NUMBER(38) TEXT LONG TYPE_TEXT_LENGTH NUMBER(38) TYPE_TEXT VARCHAR2(4000) OID_TEXT_LENGTH NUMBER(38) OID_TEXT VARCHAR2(4000) VIEW_TYPE_OWNER VARCHAR2(30) VIEW_TYPE VARCHAR2(30) SUPERVIEW_NAME VARCHAR2(30) SQL spool off

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

列表A

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/bianchengyuyan/)

列表A中演示了使用CREATE TABLE时的错误和成功使用COPY命令的方法。

展开更多 50%)
分享

猜你喜欢

利用SQL *Plus复制遗留的Oracle数据表

编程语言 网络编程
利用SQL *Plus复制遗留的Oracle数据表

利用SQL*Plus复制遗留的Oracle数据表

电脑网络
利用SQL*Plus复制遗留的Oracle数据表

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

Oracle 数据表分区的策略

编程语言 网络编程
Oracle 数据表分区的策略

Oracle 9i截断数据表

编程语言 网络编程
Oracle 9i截断数据表

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

Oracle 9i创建数据表

编程语言 网络编程
Oracle 9i创建数据表

Oracle 9i删除数据表

编程语言 网络编程
Oracle 9i删除数据表

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

减少win7开机等待时间和win7关机等待时间

减少win7开机等待时间和win7关机等待时间

JavaScript如何给JavaScript文件传递参数

JavaScript如何给JavaScript文件传递参数
下拉加载更多内容 ↓