首页 > 数据库 > Oracle > SQL基础(十)SQL*Plus 命令
■执行参数
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
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/174388/viewspace-905994/ ,如需转载,请注明出处,否则将追究法律责任。