当前位置:首页 » 编程语言 » oracle运行sql文件
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

oracle运行sql文件

发布时间: 2022-01-23 14:09:45

‘壹’ oracle中怎样执行.sql文件

建议使用plsql工具来连接Oracle数据库进行表操作,这样很方便的,就像使用sqlserver一样方便

‘贰’ oracle sql developer 怎么运行*.sql文件

直接把sql文件拖进sqldeveloper窗口,选中要执行的sql语句,点击绿色的右三角按钮,即可执行~

‘叁’ 如何使用oracle存储过程执行外部的sql脚本文件

你把脚本内容直接在存储过程中实现,然后利用job去定时调度就好了。

‘肆’ oracle导入sql文件

1. 获取帮助

imp help=y
2. 导入一个完整数据库

imp system/manager file=bible_db log=dible_db full=y ignore=y
3. 导入一个或一组指定用户所属的全部表、索引和其他对象

imp system/manager file=seapark log=seapark fromuser=seapark
imp system/manager file=seapark log=seapark fromuser=(seapark,amy,amyc,harold)
4. 将一个用户所属的数据导入另一个用户

imp system/manager file=tank log=tank fromuser=seapark touser=seapark_
imp system/manager file=tank log=tank fromuser=(seapark,amy)
touser=(seapark1, amy1)
5. 导入一个表

imp system/manager file=tank log=tank fromuser=seapark TABLES=(a,b)
6. 从多个文件导入

imp system/manager file=(paycheck_1,paycheck_2,paycheck_3,paycheck_4)
log=paycheck, filesize=1G full=y
7. 使用参数文件

imp system/manager parfile=bible_tables.par
bible_tables.par参数文件:

#Import the sample tables used for the Oracle8i Database Administrator's
Bible. fromuser=seapark touser=seapark_ file=seapark log=seapark_import
8. 增量导入

imp system./manager inctype= RECTORE FULL=Y FILE=A
-------------------------------------------------------------------------------------------------------------------------------------------

1. 获取帮助
exp help=y

2. 导出一个完整数据库
exp system/manager file=bible_db log=dible_db full=y

3. 导出数据库定义而不导出数据
exp system/manager file=bible_db log=dible_db full=y rows=n

4. 导出一个或一组指定用户所属的全部表、索引和其他对象
exp system/manager file=seapark log=seapark owner=seapark
exp system/manager file=seapark log=seapark owner=(seapark,amy,amyc,harold)
注意:在导出用户时,尽管已经得到了这个用户的所有对象,但是还是不能得到这些对象引用的任何同义词。解决方法是用以下的SQL*Plus命令创建一个脚本文件,运行这个脚本文件可以获得一个重建seapark所属对象的全部公共同义词的可执行脚本,然后在目标数据库上运行该脚本就可重建同义词了。

SET LINESIZE 132
SET PAGESIZE 0
SET TRIMSPOOL ON
SPOOL c:\seapark.syn
SELECT 'Create public synonym '||synonym_name
||' for '||table_owner||'.'||table_name||';'
FROM dba_synonyms
WHERE table_owner = 'SEAPARK' AND owner = 'PUBLIC';
SPOOL OFF

5. 导出一个或多个指定表
exp seapark/seapark file=tank log=tank tables=tank
exp system/manager file=tank log=tank tables=seapark.tank
exp system/manager file=tank log=tank tables=(seapark.tank,amy.artist)

6. 估计导出文件的大小
全部表总字节数:
SELECT sum(bytes)
FROM dba_segments
WHERE segment_type = 'TABLE';

seapark用户所属表的总字节数:
SELECT sum(bytes)
FROM dba_segments
WHERE owner = 'SEAPARK'
AND segment_type = 'TABLE';

seapark用户下的aquatic_animal表的字节数:
SELECT sum(bytes)
FROM dba_segments
WHERE owner = 'SEAPARK'
AND segment_type = 'TABLE'
AND segment_name = 'AQUATIC_ANIMAL';

7. 导出表数据的子集(oracle8i以上)
NT系统:

exp system/manager query='Where salad_type='FRUIT'' tables=amy.salad_type
file=fruit log=fruit
UNIX系统:

exp system/manager query=\"Where salad_type=\'FRUIT\'\" tables=amy.salad_type
file=fruit log=fruit

8. 用多个文件分割一个导出文件
exp system/manager
file=(paycheck_1,paycheck_2,paycheck_3,paycheck_4)
log=paycheck, filesize=1G tables=hr.paycheck

9. 使用参数文件
exp system/manager parfile=bible_tables.par
bible_tables.par参数文件:

#Export the sample tables used for the Oracle8i Database Administrator's Bible.
file=bible_tables
log=bible_tables
tables=(
amy.artist
amy.books
seapark.checkup
seapark.items
)

10. 增量导出
“完全”增量导出(complete),即备份整个数据库
exp system/manager inctype=complete file=990702.dmp
“增量型”增量导出(incremental),即备份上一次备份后改变的数据
exp system/manager inctype=incremental file=990702.dmp
“累计型”增量导出(cumulative),即备份上一次“完全”导出之后改变的数据
exp system/manager inctype=cumulative file=990702.dmp

imp boss/boss@scott file=jkluio.dmp log=jkluio.log fromuser=boss touser=boss commit=y;

exp boss/123qwe!@CBGLDB file=boss.dmp log=boss.log owner=boss;

‘伍’ oracle中运行.sql文件的日志怎么输出

批量执行sql文件并输出执行日志

1、建立betchinsert.bat文件。内容:sqlplus username/password@服务名 @BETCH.SQL > SQLINSERT.log exit

2、建立betah.sql文件。内容:
@@nkgis.sql\AE_USERS.sql
@@nkgis.sql\AE_ROLES.sql
@@nkgis.sql\AE_MENUS.sql

可以写多个sql文件,注意路径要正确。在这里的nkgis.sql是文件夹名

3、建立相应的sql文件,如AE_USERS.sql

4、执行betchinsert.bat就可以执行所有的sql文件。并且会在betchinsert.bat文件的同目录中生成SQLINSER.log文件。
执行结束后会自动退出.

‘陆’ oracle运行完sql文件后,怎么用spool命令生成txt文件呢

1、运行完之后就晚了,在运行前在sqlplus敲入如下命令:spool 文件路径\文件名; 如 spool D:\test.txt。这样你再写任何命令都会被保存到D:\test.txt中。
2、当执行结束后,直接退出sqlplus或者使用spool off就可以关闭文件输出功能了。

---
以上,希望对你有所帮助。

‘柒’ oracle如何执行sql脚本

你用的Oracle客户端是什么!之前用的是toad,选中你要执行的包或者存储过程,然后右键“Execute”!

‘捌’ Oracle 批量执行多个sql文件

方法如下:
1:运行cmd进入命令行界面
2:进入到存放批量sql的文件夹下面
3:输入命令 sqlplus 数据库名/密码@数据库 按回车键
4:输入spool 指定路径:\a.log 按回车键 (此步骤的主要作用就是追踪批量执行sql的日志,路径随便写,只要能找到就行,a.log可以随便起名,但是必须要.log后缀)
5:@start.sql 按回车键(在批量sql文件夹下写一个文件,名字叫start.sql,其中在这个文件里面写批量sql的文件名)
具体格式如下:@@sql的文件名.sql;
@@sql的文件名2.sql;
6:spool off (此时a.log中所有日志已经写入完毕)
7:exit 退出sqlplus
当然只有一个sql文件,但是里面有多个insert语句,数据量非常大,此时也可以在命令状态下执行,前4步是一样的,第五步就是@文件名.sql;

‘玖’ oracle 怎么运行SQl脚本

连接数据库SQL> connect / as sysdba
运行脚本SQL> @/admin/XX.sql 这里的/adminXX.sql 是绝对路径名, linux系统的话要注意 目录权限问题,windows就不用。

‘拾’ Oracle11g如何将sql脚本运行到指定的表空间

修改脚本中创建表的语句,创建表的时候指定表空间。
例如CREATE TABLE a(id NUMBER, name VARCHAR(100) TABLESPACE new;
或者CREATE TABLE a1 TABLESPACE new AS (SELECT * FROM a);