oracle sqlplus执行sql文件
- 格式:doc
- 大小:26.00 KB
- 文档页数:2
Sql*plus的使用Sql*plus的使用Sql*plus介绍Sql*plus是oracle提供的一个工具程序,既可以在oracle服务器使用,也可以在oracle 客户端使用。
在windows下分两种,sqlplus.exe是命令行程序,sqlplusw.exe是窗体程序,通常我们在开始菜单中启动的是后者,两者的功能是一致的。
Sql*plus是一个最常用的工具,具有很强的功能,主要有:1. 数据库的维护,如启动,关闭等,这一般在服务器上操作。
2. 执行sql语句执行pl/sql。
3. 执行sql脚本。
4. 数据的导出,报表。
5. 应用程序开发、测试sql/plsql。
6. 生成新的sql脚本。
7. 供应用程序调用,如安装程序中进行脚本的安装。
2 dual表dual是一张系统表,同时也被定义成了public同义词。
它只有一个字段和一条记录。
该表本身的结构和数据没有什么意义,主要是借助该表进行其它操作。
如:select sysdate from dual; --获取函数值select 21+15*3 from dual; --计算表达式的值说明:不要对dual表进行ddl与dml操作,只进行查询操作。
3 sql*plus使用3.1 启动sql*plus1. 不带参数启动启动sqlplusw.exe程序,会弹出登陆框,让输入用户名、密码和连接字符串,在用户名中输入“/nolog”,表示先进入sql>提示符,先不连接数据库,下面可以利用connect命令连接数据库。
启动sqlplus.exe程序,会提示输入用户名与密码。
如果用户名输入2. 带参数启动下面列举一些最常见的方式,还有很多可选参数。
1) 不连接数据库sqlplus /nolog2) 连接数据库sqlplus username/password3) 使用net8连接字符串连接数据库sqlplus username/password@connstr4) 连接后执行filename指定的sql脚本,sql脚本中是sql命令和sql*plus的设置命令sqlplus username/password[@connstr] @filename3.2 sql*plus的命令3.2.1 帮助命令1. help命令格式:help 命令名,用于知道某个具体命令的帮助信息。
通过f5查看到的执行计划,其实是pl/sql developer工具内部执行查询 plan_table表然后格式化的结果。
select * from plan_table where statement_id=...。
其中description列描述当前的数据库操作,object owner列表示对象所属用户,object name表示操作的对象,cost列表示当前操作的代价(消耗),这个列基本上就是评价sql语句的优劣,cardinality列表示操作影响的行数,bytes列表示字节数篇二:plsqldeveloper工具使用教程plsql入门pl/sql的概述pl/sql的优势pl/sql是一种块结构的语言,允许你将业务逻辑封装在一起,这是到目前为止使用pl/sql的最大优势pl/sql是在服务器上运行,可以与数据库和sql引擎直接进行交互,pl/sql是什么?(procedural language/sql) 是oracle在标准的sql语言上的扩展,pl/sql不仅允许嵌入sql语言,还可以定义变量和常量,允许使用条件语句和循环语句,允许使用列外处理各种错误,这样使得它的功能变得更加强大。
特性: 减少java程序的复杂性一.过程,函数,触发器是pl/sql编写的二.过程、函数、触发器是在oracle中三. pl/sql是非常强大的数据库过程语言四.过程,函数可以再java程序中调用为什么学?a) 提高应用程序的运行性能b) 模块化的设计思想[分页的过程,订单的过程,转账的过程]c) 减少网络传输量(传统的方法,用sql语句传输!现在就只需要调用存储过程) d) 提高安全性(传统sql 可以看到表名字段等…)不好:移植性不好,(你写好的存储过程,函数等当我们要换数据库时,这些东西就没用了)开发工具:1. sqlplus 开发工具是oracle公司提供的一个工具,这个因为我们在以前介绍过:2. pl/sql developer开发工具pl/sql developer是用于开发pl/sql块的集成开发环境(ide)它是一个独立的产品,而不是oracle的一个附带品,createprocedure sp_pro1//存储过程名字 isbegin---执行部分insert into mytest values(‘’,’’);end;/查看错误信息show error;调用过程:有两中方式1 exec 过程名(参数值1,参数值2…..)2 call 过程名用pl/sql developer--案例create or replace procedure简单分类pl/sql developer 工具的使用:plsql developer是一个为oracle数据库开发存储程序单元的集成开发环境,使用plsql developer你能方便的创建你的客户/服务器应用程序的服务器部分。
Sql*plus中蕴藏着好多技巧,如果掌握这些技巧,对于在oracle数据库下进行快速开发与有效维护数据库都是有益的。
1.使用SQL*PLUS动态生成批量脚本将spool与select命令结合起来使用,可以生成一个脚本,脚本中包含有可以批量执行某一任务的语句。
例1:生成一个脚本,删除SCOTT用户下的所有的表:a. 创建gen_drop_table.sql文件,包含如下语句:SPOOL c:\drop_table.sqlSELECT 'DROP TABLE '|| table_name ||';' FROM user_tables;SPOOL OFFb. 以SCOTT用户登录数据库SQLPLUS > @ …..\gen_dorp_table.sqlc. 在c盘根目录下会生成文件drop_table.sql文件,包含删除所有表的语句,如下所示:SQL>SELECT 'DROP TABLE '|| table_name ||';' FROM user_tables;'DROPTABLE'||TABLE_NAME||';'------------------------------------DROP TABLE DEPT;DROP TABLE EMP;DROP TABLE PARENT;DROP TABLE STA T_VENDER_TEMP;DROP TABLE TABLE_FORUM;5 rows selected.SQL>SPOOL OFFd. 对生成的drop_table.sql文件进行编辑去掉不必要的部分,只留下drop table …..语句e. 在scott用户下运行dorp_table.sql文件,删除scott用户下所有的表。
SQLPLUS > @ c:\dorp_table.sql在上面的操作中,在生成的脚本文件中会有多余的字符,如运行的sql语句,标题,或返回的行数,需要我们编辑该脚本后再运行,给实际的操作带来诸多不便。
导⼊导出dmp⽂件、执⾏sql⽂件导出dmpcreate directory expDir as'/oracle/oracle_data/expDmp';Grant read,write on directory expDir to GSDX_GZZSV1;服务名⽅式:expdp GSDX_GZZSV1/gzzs@127.0.0.1/ schemas=GSDX_GZZSV1 directory=expDir dumpfile=GSDX_GZZSV1.dmp logfile=GSDX_GZZSV1.log;SID:expdp JTDX_HUNT_PD_TESTV1/HUNT_PD_TEST directory=JTDX_DIR dumpfile=JTDX_HUNT_PD_TESTV1.dmp导⼊dmp1.⾸先要知道dmp⽂件的导出⽅式是expdp还是exp 然后⽤对应的⽅式导⼊2.知道表空间CLOUD_AH_IOM3.知道⽤户名cloud_123_gs4.创建⽤户,并带有表空间sqlplus / as sysdbacreate tablespace CLOUD_AH_IOM datafile '${ORACLE_HOME}\oradata\cloud_ah_iom.dbf' size 100M reuse autoextend on next 40M maxsize unlimited default storage(initial128k next 128k minextents 2 maxextents unlimited);这⾥指定dbf⽂件的时候,如果⽤户⽬录不同,要将对这个⽬录的操作权限赋值chown -R oracle oracle_data/使⽤root ⽤户将oracle_data/ ⽬录的操作权限赋值给oracle创建⽤户:create user cloud_123_gs identified by cloud_123_gs default tablespace CLOUD_AH_IOM;5.赋权grant connect,resource,dba to cloud_123_gs;grant unlimited tablespace to cloud_123_gs;grant create database link to cloud_123_gs;grant select any sequence,create materialized view to cloud_123_gs;6.创建⽬录,并授权create or replace directory dpump_dir as '/home/oracle/dmp'; --这⾥是dmp⽂件所在的⽂件路径select * from dba_directories;grant read,write on directory dpump_dir to cloud_123_gs7.导⼊命令impdb:表空间,⽤户相同impdp cloud_123_gs/cloud_123_gs DIRECTORY=dpump_dir DUMPFILE=expdp.dmp SCHEMAS=cloud_123_gs;impdb:修改表空间和⽤户impdp SOC2/SOC2 directory=JILIN_ZHENDUAN_DIR dumpfile=expdp_soc1029.dmp remap_schema=SOC:SOC2REMAP_TABLESPACE='(SOC_TBS:JILIN_SOC_1_TBS)' logfile=soc2.log解释:SOC2/SOC2 ⽤户名/密码directory 第六步中创建的dumpfile dmp⽂件路径(在dmp⽂件所在路径,可以直接⽤⽂件名)remap_schema:SOC:SOC2 从dmp的SOC⽤户导⼊为新的SOC2⽤户REMAP_TABLESPACE='(SOC_TBS:JILIN_SOC_1_TBS)' 表空间映射从SOC_TBS 导⼊到JILIN_SOC_1_TBSnohup impdp XJYD_SOCV1/soc DIRECTORY=XJYD_DIR dumpfile=YTH2018.dmp logfile=YTH2018.log exclude=table:"in('AUTHENTICATE_LOG')"remap_schema=ISAP:XJYD_SOCV1remap_tablespace=TBS_AL:XJYD_SOC_1_TBS,TBS_ALIDX:XJYD_SOC_1_TBS,TBS_DATA:XJYD_SOC_1_TBS,TBS_SOC:XJYD_SOC_1_TBS,TBS_TE:XJYD_SOC_1_TBS,TBS_TEIDX:XJYD_ &exclude=table:"in('AUTHENTICATE_LOG')" 可以让dmp⽂件内的AUTHENTICATE_LOG表不导⼊nohup impdp HBLT_IOMTESTV1/IOMTEST directory=HBLT_DIR dumpfile=IOMTEST_20190320.dmp remap_schema=IOMTEST:HBLT_IOMTESTV1 TRANSFORM=segment_attributes:n logfile=IOMTEST_20190320_2.log &segment_attributes:n 可以让remap_tablespace参数⽆效,把所有的表导⼊到创建⽤户时的默认表空间⾥⾯imp 修改表空间(貌似没⽤)nohup imp YNDX_ZDV1/YN_ZD_213 file='YN_ZD1011.dmp' tablespaces=YNDX_EOMS_PUBLIC_1_TBS full=y ignore=y log='YNDX_ZDV1.log' &***如果数据库存在多个实例,如何进⾏不同数据库的导⼊?在命令⾏执⾏:export ORACLE_SID=orcl12cexport ORACLE_SID=orcl进⾏切换不同的数据库实例。
oraclespool⽤法及执⾏.sql⽂件spool⽤法:在PL/SQL developer ⾥⾯打开COMMAND Windown(命令窗⼝):SQL> spool d:\1.txtStarted spooling to d:\1.txtSQL>(输⼊查询SQL)SQL>spool offStopped spooling to d:\1.txt就可以在d盘找到⽂件1.txt,⽂件⾥有查询SQL所查询的数据了。
执⾏SQL⽂件:SQL>start d:\1.sql就可以运⾏1.sql⽂件中的语句了。
关于SPOOL(SPOOL是SQLPLUS的命令,不是SQL语法⾥⾯的东西。
)对于SPOOL数据的SQL,最好要⾃⼰定义格式,以⽅便程序直接导⼊,SQL语句如:select taskindex||'|'||commonindex||'|'||tasktype||'|'||to_number(to_char(sysdate,'YYYYMMDD')) from ssrv_sendsms_task;spool常⽤的设置set colsep' '; //域输出分隔符set echo off; //显⽰start启动的脚本中的每个sql命令,缺省为onset feedback off; //回显本次sql命令处理的记录条数,缺省为onset heading off; //输出域标题,缺省为onset pagesize 0; //输出每页⾏数,缺省为24,为了避免分页,可设定为0。
set termout off; //显⽰脚本中的命令的执⾏结果,缺省为onset trimout on; //去除标准输出每⾏的拖尾空格,缺省为offset trimspool on; //去除重定向(spool)输出每⾏的拖尾空格,缺省为off导出⽂本数据的建议格式:SQL*PLUS环境设置SET NEWPAGE NONESET HEADING OFFSET SPACE 0SET PAGESIZE 0SET TRIMOUT ONSET TRIMSPOOL ONSET LINESIZE 2500注:LINESIZE要稍微设置⼤些,免得数据被截断,它应和相应的TRIMSPOOL结合使⽤防⽌导出的⽂本有太多的尾部空格。
Oracle SQL*PLUS基础及sqlplus命令详解-1Oracle SQL*PLUS基础Oracle的SQL*PLUS是设计所有应用系统的基础工具。
要想将应用系统设计成一个健壮的、性能优越的系统。
最关键的是要理解RDBMS的真正含义和结构,理解Oracle SQL*PLUS的特点和核心,弄清关系数据库与桌面数据库的差别。
比如理解数据的完整性、一致性、索引、视图等。
只有这样才能设计出符合Oracle特点的应用系统。
从而保证系统在提供使用后不会出现一致性、性能等问题。
§1.1 理解关系数据库系统(RDBMS)CODASYL(数据系统语言协会)是数据库任务组(Database Task Group,DBTG)创建的一种数据库标准,这是一种基于COBOL的网络数据库标准。
§1.1.1 关系模型一个描述两个集合的元素如何相互联系或如何一一对应的数学概念,对于数据库来说,关系只是一个带有一些特殊属性的表。
所以有:l 数据的基础项是关系l 在这些表上的操作只产生关系一个关系表必须符合某些特定条件,才能成为关系模型的一部分l 储存在单元中的数据必须是原子的。
每个单元只能存储一条数据,叫信息原则(Information Principle)。
如果存储多条则违反信息原则。
特舒情况下可能需要违反信息原则。
l 储存在列下的数据必须具有相同的数据类型。
l 每一行是唯一的(没有完全相同的行)。
l 列没有顺序。
l 行没有顺序l 列有一个唯一性的名称。
关系模型的另一个是完整性原则。
它包括实体完整性原则(Entity integrity rule)和引用完整性原则(Referential integrity rule ),如:l 主键( Primary key )是能唯一标识行的一列或一组列的集合。
l 由多个列构成的主键称为连接键(Concatenated key)、组合键(Compound key ),或称作为复合键(Composity key )。
oracle登录sql语句标题:Oracle登录SQL语句示例1. 使用用户名和密码登录Oracle数据库```sqlsqlplus username/password@//hostname:port/service_name```说明:将`username`替换为数据库用户名,`password`替换为密码,`hostname`替换为数据库服务器的主机名或IP地址,`port`替换为数据库监听的端口号,`service_name`替换为数据库的服务名。
2. 使用用户名和密码登录指定实例的Oracle数据库```sqlsqlplus username/password@//hostname:port/instance_name```说明:与示例1类似,只是将`service_name`替换为数据库的实例名。
3. 使用用户名和密码登录本地Oracle数据库```sqlsqlplus username/password```说明:在本地登录时,可以省略主机名、端口和服务名/实例名。
4. 使用用户名和密码登录Oracle数据库,并执行SQL脚本文件```sqlsqlplus username/password@//hostname:port/service_name @/path/to/script.sql```说明:将`/path/to/script.sql`替换为要执行的SQL脚本文件的路径。
5. 使用用户名和密码登录Oracle数据库,并执行SQL命令```sqlsqlplus username/password@//hostname:port/service_name <<EOFSQL_COMMANDSQL_COMMAND...EOF```说明:将`SQL_COMMAND`替换为要执行的SQL命令,可以使用多个SQL命令。
6. 使用用户名和密码登录Oracle数据库,并执行匿名PL/SQL块```sqlsqlplus username/password@//hostname:port/service_name <<EOFBEGINPL/SQL_CODE;PL/SQL_CODE;...END;/EOF```说明:将`PL/SQL_CODE`替换为要执行的PL/SQL代码,可以使用多个PL/SQL语句。
oracle sql执行流程下载温馨提示:该文档是我店铺精心编制而成,希望大家下载以后,能够帮助大家解决实际的问题。
文档下载后可定制随意修改,请根据实际需要进行相应的调整和使用,谢谢!并且,本店铺为大家提供各种各样类型的实用资料,如教育随笔、日记赏析、句子摘抄、古诗大全、经典美文、话题作文、工作总结、词语解析、文案摘录、其他资料等等,如想了解不同资料格式和写法,敬请关注!Download tips: This document is carefully compiled by theeditor. I hope that after you download them,they can help yousolve practical problems. The document can be customized andmodified after downloading,please adjust and use it according toactual needs, thank you!In addition, our shop provides you with various types ofpractical materials,such as educational essays, diaryappreciation,sentence excerpts,ancient poems,classic articles,topic composition,work summary,word parsing,copy excerpts,other materials and so on,want to know different data formats andwriting methods,please pay attention!1. 解析(Parse):当用户提交 SQL 语句时,Oracle 首先对其进行解析。
oracle的sqlplus sql model的用法一、概述SQLPlus是Oracle数据库提供的一个命令行工具,用于与数据库进行交互。
它允许用户执行SQL语句,查看数据库状态,创建和管理数据库对象等。
SQLModel 是SQLPlus中的一个重要功能,它提供了一种可视化的方式来创建和编辑SQL模型。
本篇文章将详细介绍Oracle的SQLPlusSQLModel的用法。
二、使用SQLPlus要使用SQLPlus,首先需要确保已经安装了Oracle数据库,并且已经配置了正确的环境变量。
然后,可以通过在命令行中输入以下命令来启动SQLPlus:```sqlplususername/password@database```其中,username是数据库用户名,password是用户密码,database是连接的数据库名称。
成功登录后,将会进入SQLPlus的命令行界面。
三、使用SQLModel在SQLPlus中,可以使用SQLModel来创建和编辑SQL模型。
SQLModel提供了一个图形化界面,可以直观地创建表、视图、索引等数据库对象。
以下是使用SQLModel的一般步骤:1.打开SQLPlus并连接到数据库。
2.在命令行中输入“SQL”命令,进入SQL模式。
3.输入“SHOWSESSION”命令,查看当前会话信息。
4.输入“CREATEMODEL”命令,并指定模型名称和数据源(通常是数据库)。
5.在模型界面中,可以创建表、视图、索引等数据库对象,并定义它们的属性和关系。
6.保存模型并退出模型编辑器。
7.可以通过“EXECUTE”命令执行模型中的SQL语句,查看结果。
下面是一个简单的示例,展示如何使用SQLModel创建一个简单的数据库模型:1.打开SQLPlus并连接到数据库。
2.输入“CREATEMODELmy_model_nameON(your_schema)SAMPLEyour_sample_data”,其中your_schema是包含数据的用户模式名称,your_sample_data是一个包含数据样例的文本文件路径。
Oracle基础:通过sqlplus执⾏sql语句后的结果进⾏判断这篇⽂章介绍⼀下如何对sqlplus执⾏的sql语句结果进⾏判断。
环境准备使⽤Oracle的精简版创建docker⽅式的demo环境,详细可参看:常见问题在sqlplus中执⾏sql语句,如果直接使⽤命令⾏的⽅式调⽤时会碰到两个问题:问题1: 需要进⾏交互性的输⼊问题2:结果的判断不能通过返回值来确认解决⽅式在脚本调⽤⾥,解决⽅式如下问题1可以通过前⽂提到的Here Document来解决。
问题2,则可以通过对输出的判断来进⾏,因为Oracle的错误代码基本以ORA-打头,所以根据输出中是否包含ORA-,基本可确认是否存在错误。
执⾏结果判断⽰例这⾥使⽤命令⾏的⽅式进⾏验证,直接拷贝到脚本中即可以使⽤脚本的⽅式与sqlplus进⾏集成。
oracle@e871d42341c0:~$ sqlplus system/liumiao123@XE <<EOF> desc student> delete from student;> select * from student;> insert into student values (1001, 'liumiaocn');> insert into student values (1001, 'liumiao');> insert into student values (1003, 'michael');> commit;> select * from student;> EOFSQL*Plus: Release 11.2.0.2.0 Production on Mon Oct 22 05:18:51 2018Copyright (c) 1982, 2011, Oracle. All rights reserved.Connected to:Oracle Database 11g Express Edition Release 11.2.0.2.0 - 64bit ProductionSQL> Name Null? Type----------------------------------------- -------- ----------------------------STUID NOT NULL NUMBER(4)STUNAME VARCHAR2(50)SQL>3 rows deleted.SQL>no rows selectedSQL>1 row created.SQL> insert into student values (1001, 'liumiao')*ERROR at line 1:ORA-00001: unique constraint (SYSTEM.SYS_C007024) violatedSQL>1 row created.SQL>Commit complete.SQL>STUID STUNAME---------- --------------------------------------------------1001 liumiaocn1003 michaelSQL> Disconnected from Oracle Database 11g Express Edition Release 11.2.0.2.0 - 64bit Productionoracle@e871d42341c0:~$ echo $?oracle@e871d42341c0:~$从上⽂可以看到,三⾏insert的sql语句由于第⼆⾏的主键重复,出现错误,但是最终的结果使⽤命令⾏的⽅式⽆法对结果进⾏判断,这是控制台⽅式的常见场景,⽐如sftp或者ftp等也有此特点,⼀般常⽤的对应⽅式⽆法通过返回值进⾏判断,只能通过输出来进⾏判断。
SQLPlus的使⽤详解(登录和常⽤命令)1.SQL Plus简介SQL Plus⼯具是随 Oracle数据库服务器或客户端的安装⽽⾃动进⾏安装的管理与开发⼯具, Oracle数据库中所有的管理操作都可以通过 SQLPlus⼯具完成。
SQLPlus可以运⾏于任何Oracle数据库运⾏的操作系统平台,其使⽤⽅法基本相同。
利⽤ SQLPlus可以实现以下操作:输⼊、编辑、存储、提取、运⾏和调试SQL语句和PL/SQL程序;开发、执⾏批处理脚本;执⾏数据库管理;处理数据、⽣成报表、存储、打印、格式化查询结果;检查表和数据库对象定义;启动/关闭数据库实例。
2.登录SQL plus1.运⾏SQLPLUS⼯具 C:\Users\wd-pc>sqlplus2、直接进⼊SQLPLUS命令提⽰符 C:\Users\wd-pc>sqlplus /nolog3、以OS⾝份连接 C:\Users\wd-pc>sqlplus / as sysdba 或 SQL>connect / as sysdba4、普通⽤户登录 C:\Users\wd-pc>sqlplus scott/123456 或 SQL>connect scott/123456 或 SQL>connect scott/123456@servername5、以管理员登录 C:\Users\wd-pc>sqlplus sys/123456 as sysdba 或 SQL>connect sys/123456 as sysdba6、退出 SQL>exit3.SQL Plus 常⽤命令1.sql>show user;查看当前⽤户2.conn命令先断开当前连接,然后建⽴新的连接。
该命令的语法是:SQL>CONN[username]/[password] [econnect_identifier]例如:SQL>conn hr/123456 注:conn同connect3.DISC该命令的作⽤是断开与数据库的连接,但不退出SQLPlus环境,如:4.编辑命令当在SQLPlus中输⼊SQL语句或PL/SQL程序时,最近输⼊的⼀条SQL语句或程序PL/SQL代码会暂时存放到SQL缓冲区中。
sqlplus 用法摘要:1.SQPLUS 简介2.SQPLUS 安装与配置3.SQPLUS 基本用法4.SQPLUS 高级用法5.总结正文:【1.SQPLUS 简介】SQPLUS 是Oracle 提供的一个用于SQL*Plus 的图形界面工具,它允许用户通过图形界面执行SQL 语句,方便用户管理和查询Oracle 数据库。
SQPLUS 可以运行在Windows、Linux 和macOS 等操作系统上。
【2.SQPLUS 安装与配置】安装SQPLUS 的过程相对简单。
首先,需要确保用户的计算机上已经安装了Oracle 数据库软件。
然后,通过Oracle 官网下载SQPLUS 安装程序并运行,按照提示进行安装即可。
配置SQPLUS 时,需要设置SQL*Plus 的环境变量,包括ORACLE_HOME、ORACLE_SID 和NLS_DATE_FORMAT 等。
此外,还需要配置数据库连接信息,如用户名、密码和连接字符串等。
【3.SQPLUS 基本用法】SQPLUS 的基本用法主要包括以下几个方面:- 连接到Oracle 数据库:使用"sqlplus<username>/<password>@<hostname>:<port>/<service_name>" 命令连接到数据库。
- 执行SQL 语句:在SQPLUS 中,可以使用"SELECT" 语句查询数据,使用"INSERT" 语句插入数据,使用"UPDATE" 语句更新数据,使用"DELETE" 语句删除数据等。
- 管理数据库对象:SQPLUS 支持创建、修改和删除数据库表、视图、索引等对象。
- 导出和导入数据:SQPLUS 提供了导出和导入数据的功能,支持将数据导出为CSV、XLS 等格式,也可以将数据从CSV、XLS 等格式导入到数据库中。
SQL*Plus快速参考Release 9.22002年3月Part No. A90843-01关于快速参考快速参考描述了i SQL*Plus中的按钮和图标,以及i SQL*Plus和SQL*Plus命令语法。
对于每个命令的详细信息,请参考SQL*Plus User's Guide andReference。
快速参考中包括下面的主题:命令语法中的约定Documentation Accessibility启动iSQL*Plus运行iSQL*Plus服务器统计信息报告iSQL*Plus导航iSQL*Plus首选项iSQL*Plus工作屏幕按钮启动和退出SQL*Plus启动和关闭数据库输入和执行命令操作SQL、SQL*Plus和PL/SQL命令格式化查询结果访问数据库其它Oracle是注册商标,Oracle9i、SQL*Plus和i SQL*Plus都是Oracle Corporation的商标或注册商标。
其它用到的名称可能是它们各自所有者的商标。
版权所有@ 1996,2002 Oracle Corporation.保留所有权利。
命令语法中的约定下面两张表描述了本快速参考中使用的命令语法的符号和约定。
命令、术语和子句特征示例说明大写BTITLE 完全按照拼写样式输入文本;不必一定要以大写输入。
小写斜体column 一个子句值;替换一个适当的值。
具有特殊意义的单词 c 单个字符。
char CHAR值(在单引号中的文本值)或者CHAR类型的表达式。
d ore 日期或者DATE类型的表达式。
expr 未指明的表达式。
m or n NUMBER值。
text CHAR常量,可以有也可以没有单引号。
variable 用户变量(除非文本指定了其它的变量类型)。
标点符号特征示例说明竖线| 分隔可选的语法元素。
中括号[ON|OFF] 一个或多个可选项。
如果有两个被竖线分隔的项,只需输入其中一项。
不要输入中括号或竖线。
[原创]oracle sqlplus执行sql文件
Oracle执行外部文件:
c:>sqlplus user/pwd@db
sql>@new.sql
执行多个sql文件:
1.把所有的文件都放在同一个目录下,然后在命令行里执行命令:
c:>dir/b > d:\1.sql
会把所有的sql文件名都输出到一个sql文件中。
2.用UltraEdit打开生成的sql文件,alt+C切换到column mode,给所有的行前都添加一个“@”,保存。
3.在sqlplus中执行“@d:\1.sql”
如何避免'&'字符:
sql中&可以传递参数,但有时需要插入'&',例:
SQL> select '&hello' v from dual;
输入hello 的值: hello
原值1: select '&hello' v from dual
新值1: select 'hello' v from dual
v
-----
hello
可以使用如下方法避免:
A:
SQL> select chr(38) || 'hello' v from dual;
V
------
&hello
B:
SQL> set define off
SQL> select '&hello' v from dual;
V
------ &hello。