SQL基础(十)SQL*Plus 命令

SQL*Plus 命令 - describe、variable、execute、spool

■执行参数
sqlplus.exe cxck/cxck
            |   |_ 密码
            |_ 用户名

■连接命令
connect cxck/cxck@host名;
        |   |     |_ 数据库别名
        |   |_ 密码
        |_ 用户名

■结束命令
exit;

■显示模式表一览
select * from tab;

■显示表结构
describe t订货;
         |_ 表或者视图

■执行SQL,执行PL/SQL,编译
start sqlfile;
      |_ SQL 文本文件(缺省后缀: .sql)

@sqlfile;
 |_ SQL 文本文件(缺省后缀: .sql)
  ** 可指定文件路径。
     @c:tmpsqlfile;

@@pathsqlfile;
 |_ SQL 文本文件(缺省后缀: .sql)
  ** 和start一样执行SQL文件。
     @ 不能定位嵌套的sql文本文件。

■DOS中SQL*Plus执行SQL文本文件
sqlplus     cxck/cxck@host名 @sqlfile
		|   |   |         | 
		|   |   |         |_ SQL文本文件
                |   |   |_ 数据库别名
                |   |_ 密码
                |_ 用户名
        
■显示错误
show errors;

■DBMS_OUTPUT 的设置
set serverout on;
set serveroutput on size 1000000;
                         |_ 缓存大小
                            缺省值 20000
                            最小値 2000
                            最大値 1000000

■变量声明
variable 变量名 数据类型;
variable vn number;
variable vname varchar2(20);
variable rc refcursor;
var i number;

  ** 可省略var。

■执行存储过程
exec SQL文;
execute SQL文;
execute :vname := 'abc';
execute :vn := TestFnc(10, 20, :vname, :rc);
execute TestPrc(10, :vname);

■显示变量内容
print 变量名;
print vn;
print vname;

■把查询内容以文件形式地输出
spool 文件名;
...
...
spool off;

■设置每页显示行数
set pagesize 20;
             |_ 行数

■设置显示列数
set linesize 200;
             |_ 列数

■ORA-xxxxx ORACLE错误码
  ・例:通过sqlerrm(-xxxxx)查询ORA-02050的说明。
    显示结果: ORA-02050: 事务处理2.85.206已重算,某些远程DBs 可能有问题。

var msg varchar2(200);
execute :msg := sqlerrm(-2050);
print msg;

■SQL*Loader
  ・导入CSV等文本格式的数据。

-- test.csv (数据文件)
a001,10,20,30
b002,11,21,31
c003,12,22,32

-- test.ctl (控制文件)
load data infile 'test.csv' append into table t测试
fields terminated by "," optionally enclosed 'n'
trailing nullcols
(
key,
data1,
data2,
data3
)

-- sql*loader (命令)
sqlldr userid=cxck/cxck control=test.ctl log=log.txt
 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值