1000字范文,内容丰富有趣,学习的好帮手!
1000字范文 > Oracle SQL Plus 命令收集

Oracle SQL Plus 命令收集

时间:2022-02-24 02:40:46

相关推荐

Oracle SQL Plus 命令收集

数据库|mysql教程

Oracle基础教程,Oracle SQL Plus 命令收

数据库-mysql教程

cf业务网站源码,用vscode字母全白,ubuntu窗口命令,tomcat 换jdk,遍历sqlite,海贼王网页设计作品,织梦恢复数据库,outlook邮箱的服务器地址,淘宝地区选择插件,拖动前端框架,爬虫脑激发,java与php的区别,虎纠seo,springboot博客列表,zencart标签页小图标,教学网站前台er图,易语言 网页加载完毕,php app模板,织梦后台怎么修改模板,h5 css3登录页面,教学管理系统,淘宝客网站程序安装lzw

Oracle的sql*plus是与oracle进行交互的客户端工具。在sql*plus中,可以运行sql*plus命令与sql*plus语句。 我们通常所说的DML、DD

小程序棋牌游戏源码,vscode打开侧栏,Ubuntu海龟画圆,tomcat口号是什么,爬虫欺诈,php打印数组格式,辽宁省seo优化,php行业网站模板免费下载,银行后台系统模板lzw

php报修系统源码,vscode去掉注释,新款ubuntu,IE启用tomcat,sqlite字段名查询,点击图片放大镜jquery插件zoomy,web前端开发就是玩框架吗,爬虫爬取人民网,iis 发布php,名优seo优化项目,php网站实例教程,静态网页模板源码,discuz模板名称修改lzw

Oracle的sql*plus是与oracle进行交互的客户端工具。在sql*plus中,可以运行sql*plus命令与sql*plus语句。

我们通常所说的DML、DDL、DCL语句都是sql*plus语句,它们执行完后,都可以保存在一个被称为sql buffer的内存区域中,并且只能保存一条最近执行的sql语句,我们可以对保存在sql buffer中的sql 语句进行修改,然后再次执行,sql*plus一般都与数据库打交道。

除了sql*plus语句,在sql*plus中执行的其它语句我们称之为sql*plus命令。它们执行完后,不保存在sql buffer的内存区域中,它们一般用来对输出的结果进行格式化显示,以便于制作报表。

下面就介绍一下一些常用的sql*plus命令:

1)无登录进入SQL命令行状态

>sqlplus /nolog

SQL>

2)以指定帐号登录数据库

>sqlplus [用户名]/[用户密码]@[本地服务名]

>sqlplus [用户名]/[用户密码]@[服务器IP]:[服务器端口,通常为1521]/[SID]

如果帐号是sysdba,命令行需增加参数 as sysdba,,如

>sqlplus [用户名]/[用户密码]@[本地服务名] as sysdba

3)执行SQL脚本文件

SQL>start [sql文件]

SQL>@ [sql文件]

4)重新运行上一次运行的sql语句

SQL>/

5)将显示的内容输出到指定文件

SQL> SPOOL [文件名]

在屏幕上的所有内容都包含在该文件中,包括你输入的sql语句。

如要关闭spool输出,运行如下命令:

SQL> SPOOL OFF

只有关闭spool输出,才会在输出文件中看到输出的内容。

6)显示一个表的结构

SQL> desc table_name

7)显示当前环境变量的值:

SQL> Show all

8)显示当前在创建函数、存储过程、触发器、包等对象的错误信息

SQL> Show error

当创建一个函数、存储过程等出错时,变可以用该命令查看在那个地方出错及相应的出错信息,进行修改后再次进行编译。

9)显示初始化参数的值:

SQL> show PARAMETERS [parameter_name]

10) 显示数据库的版本:

SQL> show REL[EASE]

11)显示SGA的大小

SQL> show SGA

12)显示当前的用户名

SQL> show user

13)创建用户并付权限

SQL> create user [用户名] identified by [密码] default tablespace [默认的表空间名];

SQL> grant connect,resource to [用户名];

或SQL> grant create session, create table to [用户名];

connect只有create session权限,这是连接数据库的基本权限;resource是开发者权限,至于其中包含的内容可以查询系统表中的具体内容:

SQL> select * from role_sys_privs where role=’RESOURCE’;

resource一般包括如下权限:

CREATE SEQUENCE

CREATE TRIGGER

CREATE CLUSTER

CREATE PROCEDURE

CREATE TYPE

CREATE OPERATOR

CREATE TABLE

CREATE INDEXTYPE

如果要修改密码,则运行如下命令:

SQL> alert user [用户名] identified by [新密码];

14)创建用户并付权限

SQL> drop user [用户名] cascade;

如果该urer刚创建没有表等对象,可以使用drop user命令删除,否则要使用drop user cascade命令删除,此时会将该用户拥有的对象一同删除。

15)常用函数

sysdate — 当前日期时间

lower(utl_raw.cast_to_raw(DBMS_OBFUSCATION_TOOLKIT.MD5(INPUT_STRING => ‘888888’))) — md5加密

concat(‘a’,’b’) — 合并两个字符串

‘a’ || ‘b’ || ‘c’ — 合并多个字符串

to_date(‘-01-01 20:28:03′,’YYYY-MM-DD HH24:MI:SS’) –>字符串转换为date类型,参考ORACLE中date类型字段的处理 见

to_char(t.create_date,’YYYY-MM-DD HH24:MI:SS’) –>日期转换为字符串

16) 一些特殊的表的查询

查找指定用户的所有表(注意用户名用大写):select * from all_tables where OWNER = ‘【USERNAME】’;

结果中列TABLESPACE_NAME的值为表空间的名称

查找指定表的所有约束:select * from all_constraints where TABLE_NAME = ‘【TABLE_NAME】’;

查找指定表的所有外键:select * from all_constraints where TABLE_NAME = ‘【TABLE_NAME】’ and CONSTRAINT_TYPE = ‘R’;

对于CONSTRAINT_TYPE的值,R — 外键、P — 主键、U — 唯一性约束、C — 一般约束(如某列不能为空)

查找指定用户的所有存储过程和函数:select * from all_procedures where OWNER = ‘【USERNAME】’;

地中OBJECT_TYPE列的值为FUNCTION代表函数,值为PROCEDURE代表存储过程

指定索引:select /*+ index(tablename index_name)*/ from tablename

特别注意:

1)用SQL Plus命令行运行sql文件,建表语句内不能有空行,否则报语法错误

2)用SQL Plus命令行运行sql文件,文件内若包含中文,文件格式必须为ANSI(GBK),设为UTF-8会中文乱码

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。