Oracle数据库命令集

2023-10-29 16:58
文章标签 oracle 数据库 命令集

本文主要是介绍Oracle数据库命令集,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Oracle数据库命令集

关键字: oracle数据库

Oracle数据库命令集
1、sqlplus启动方式:
Dos下运行sqlplus 用户名/密码  as sysdba
例如:c:>sqlplus sys/password AS sydba(系统帐户)
或者:c:>sqlplus scott/password
2、用户连接(切换)操作:
sql>conn Scott/password(默认为tiger)
注:conn与connect使用方法一样
3、手动解锁:
sql>ALTER USER scott Account Unlock;(将scott帐户解锁)
4、查看用户(两种方式):
sql>select user form dual;
sql>show user;
5、sql帮助:
sql>help index;
6、数据库卸载和加载
sql>shutdown [NORMAL][IMMEDLATE][ABORT][TRANSACTIONAL];
sql>startup;
7、查询select操作:
sql>select *from dept;
sql>select dname,loc from dept;
sql>select *from emp where deptno=20;
注:在sql中,字符串使用单引号。
8、字段别名的定义:
sql>select hiredate AS 雇用日期 from emp
AS可以省略,但是推荐使用。
9、字符串连接
sql>selcet dname||loc from dept;
10、提取表中的前N个记录:
sql>select *from emp where rownum<=N;
11、null的使用:
sql>select ename,job from emp where comm is[not] null;
注:null参与数学表达式计算时,结果一定为null。
12、like关键字(字符串匹配):
sql>select dname from dept where dname like '_S%';
注:_代表单个字符,%代表多个字符。
13、in关键字:
sql>select dname,dpart,log from dept where deptno in(10,20);
注:只选择输出deptno值为10或20的记录。
类似于:where deptno=10 or deptno=20;
14、between and关键字:
sql>select * from dept where deptno between 10 and 30;
包括10和30.
15、set关键字:
sql>set pagesize 10;
sql>set linesize 100;
16、连接查询:
求解sal大于平均值的记录
sql>select * from emp
    where sal>(select avg(sal) from emp);
17、联合查询:
字段个数和类型必须保持一致,合并为一个查询结果。
sql>select empno,ename from emp
    union[ALL]
    select deptno,dname from dept;
ALL:代表可以有重复记录。
18、内连接查询:
内连接查询分为2中:一是在form后直接加表名,中间用逗号分隔。
sql>select * from emp e,dept d  (e d为表的别名)
    where e.deptno=d.deptno;
二是使用join关键字,条件使用ON
sql>select * from emp join dept
    ON emp.deptno=dept.deptno;
19、自连接查询:将一个表起不同的别名,使其在逻辑上成为两张表。
sql>select * from emp a,emp b
    where a.mgr=b.empno;
20、外连接查询:
左外连接查询:left join 左表全部显示
右外连接查询:right join右表全部显示
全外连接查询:full join 左右表均全部显示
以左外连接为例:
sql>select * from dept
    left join  emp
    on dept.deptno=emp.deptno;
左表(dept)信息全部显示,右表(emp)中不符合条件的记录为null。
21、集合函数(数学表达式):
sql>select AVG(sal) from emp;
sql>select Count([distinct]sal) from emp;
distinct表示不计算重复数据。
22、插入记录:
sql>Insert Into tablename (字段列表) values(属性类表);
sql>Insert Into emp(eno,ename,dept) values(1,'java',20);
23、修改(更新)记录:
sql>UpDate emp set deptno=80
    where deptno=81;
24、删除记录:
sql>Delete from tablename where 条件
sql>Delete from emp where deptno=80;
25、创建视图:注意权限,本操作是在sys帐户下进行的。
sql>create view view_name(ename,dname)
    AS
    select emp.ename,dept.dname
    from scott.emp,scott.dept
    with read only;
sql>select * from view_name;
26、同义词
    create synonym 同义词名称  for 原对象
sql>create synonym empbak for scott.emp;
sql>select * from empbak;
27、修改对象(表、视图等)结构ALTER:
sql>alter table 表名 add("book_id"VARCHAR2(10));//添加字段,注意双引号
sql>alter table 表名 modify("book_id",not null);
28、修改表的操作
sql>rename 原表名 to 新表名//修改表名
sql>select * from tab;//查找当前用户表信息
sql>desc 表名//查看表结构
sql>drop table 表名//删除表
sql>truncate table 表名//删除表中数据,保留表结构
29、事务处理
sql>commit 成功提交事务
sql>rollback 返回到事务未开始的状态
sql>savepoint A 创建事务的保存点
sql>rollback to [savepoint] A 返回保存点
30、EXISTS关键字
sql>select * from dept where EXISTS (select deptno from emp);
31、从另外一个表中拷贝记录
sql>Insert Into emp(empno,job)
    select dname from dept where deptno=50;
sql>insert into (select deptno,dname from dept)
    values (50,'Java');
32、更新(2个表操作)表记录:
sql>update emp set ename=(select dname from dept  where deptno=50 ),
    job=(select loc from dept where deptno=50 )
    where ename like 'S%'
33、删除(2个表操作)操作:
sql>delete from emp where empno=
    (select deptno from dept where deptno=50)
34、合并操作MERGE INTO:
sql>MERGE INTO 表名
    Using 表名
    ON(条件)
    when Matched then (匹配)
update set ....
    when not Matched then
insert into....
34、any/some操作,代表满足any后面的任何一个条件即可:
sql>select * from emp
    where sal<=any(2500,6000,10000);
35、all操作,代表满足all后面的所有条件:
sql>select * from emp
    where sal<=all(2500,6000,10000);
37、list操作:列出缓冲区的内容,可简写l,后接整型数字或为空
sql>list(n)
38、/操作:执行缓冲区sql命令或PL/SQL块
39、change操作:修改缓冲区里的信息,可简写c
sql>c/fron/from
将fron改写为from
40、del操作:删除指定行缓冲区命令
sql>del 2 3 删除第2行、第3行的信息。
41、在缓冲区中追加信息(追加到末尾)
sql>append where select;
42、save命令,保存缓冲区内容到指定的文件中:
sql>save c:\select.sql;
43、get命名(与save对应)
sql>get c:\select.sql;
44、@命令(与get相似,get是加载语句,然后执行,而@是加载和执行同时进行)
sql>@ c:\select.sql;
45、edit命令,载入windows操作系统的可编辑窗口,简写ed:
sql>edit

这篇关于Oracle数据库命令集的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/302027

相关文章

Mysql数据库聚簇索引与非聚簇索引举例详解

《Mysql数据库聚簇索引与非聚簇索引举例详解》在MySQL中聚簇索引和非聚簇索引是两种常见的索引结构,它们的主要区别在于数据的存储方式和索引的组织方式,:本文主要介绍Mysql数据库聚簇索引与非... 目录前言一、核心概念与本质区别二、聚簇索引(Clustered Index)1. 实现原理(以 Inno

sqlserver、mysql、oracle、pgsql、sqlite五大关系数据库的对象名称和转义字符

《sqlserver、mysql、oracle、pgsql、sqlite五大关系数据库的对象名称和转义字符》:本文主要介绍sqlserver、mysql、oracle、pgsql、sqlite五大... 目录一、转义符1.1 oracle1.2 sqlserver1.3 PostgreSQL1.4 SQLi

MySQL数据库双机热备的配置方法详解

《MySQL数据库双机热备的配置方法详解》在企业级应用中,数据库的高可用性和数据的安全性是至关重要的,MySQL作为最流行的开源关系型数据库管理系统之一,提供了多种方式来实现高可用性,其中双机热备(M... 目录1. 环境准备1.1 安装mysql1.2 配置MySQL1.2.1 主服务器配置1.2.2 从

SpringBoot基于注解实现数据库字段回填的完整方案

《SpringBoot基于注解实现数据库字段回填的完整方案》这篇文章主要为大家详细介绍了SpringBoot如何基于注解实现数据库字段回填的相关方法,文中的示例代码讲解详细,感兴趣的小伙伴可以了解... 目录数据库表pom.XMLRelationFieldRelationFieldMapping基础的一些代

使用Node.js和PostgreSQL构建数据库应用

《使用Node.js和PostgreSQL构建数据库应用》PostgreSQL是一个功能强大的开源关系型数据库,而Node.js是构建高效网络应用的理想平台,结合这两个技术,我们可以创建出色的数据驱动... 目录初始化项目与安装依赖建立数据库连接执行CRUD操作查询数据插入数据更新数据删除数据完整示例与最佳

Oracle数据库在windows系统上重启步骤

《Oracle数据库在windows系统上重启步骤》有时候在服务中重启了oracle之后,数据库并不能正常访问,下面:本文主要介绍Oracle数据库在windows系统上重启的相关资料,文中通过代... oracle数据库在Windows上重启的方法我这里是使用oracle自带的sqlplus工具实现的方

MySQL批量替换数据库字符集的实用方法(附详细代码)

《MySQL批量替换数据库字符集的实用方法(附详细代码)》当需要修改数据库编码和字符集时,通常需要对其下属的所有表及表中所有字段进行修改,下面:本文主要介绍MySQL批量替换数据库字符集的实用方法... 目录前言为什么要批量修改字符集?整体脚本脚本逻辑解析1. 设置目标参数2. 生成修改表默认字符集的语句3

Oracle Scheduler任务故障诊断方法实战指南

《OracleScheduler任务故障诊断方法实战指南》Oracle数据库作为企业级应用中最常用的关系型数据库管理系统之一,偶尔会遇到各种故障和问题,:本文主要介绍OracleSchedul... 目录前言一、故障场景:当定时任务突然“消失”二、基础环境诊断:搭建“全局视角”1. 数据库实例与PDB状态2

Linux下MySQL数据库定时备份脚本与Crontab配置教学

《Linux下MySQL数据库定时备份脚本与Crontab配置教学》在生产环境中,数据库是核心资产之一,定期备份数据库可以有效防止意外数据丢失,本文将分享一份MySQL定时备份脚本,并讲解如何通过cr... 目录备份脚本详解脚本功能说明授权与可执行权限使用 Crontab 定时执行编辑 Crontab添加定

oracle 11g导入\导出(expdp impdp)之导入过程

《oracle11g导入导出(expdpimpdp)之导入过程》导出需使用SEC.DMP格式,无分号;建立expdir目录(E:/exp)并确保存在;导入在cmd下执行,需sys用户权限;若需修... 目录准备文件导入(impdp)1、建立directory2、导入语句 3、更改密码总结上一个环节,我们讲了