oracle操作大全

合集下载

oracle数据库的使用方法

oracle数据库的使用方法

oracle数据库的使用方法以下是使用Oracle数据库的常见方法:1. 安装Oracle数据库:首先要安装Oracle数据库软件。

可以从Oracle官方网站下载安装程序,然后按照安装向导进行安装。

2. 创建数据库:安装完成后,可以使用Oracle提供的工具(如SQL*Plus、SQL Developer等)登录到数据库,然后使用DDL语句(如CREATE DATABASE)创建数据库。

3. 创建表:在数据库中创建表格是存储数据的基本单位。

可以使用CREATE TABLE语句来创建表,指定表的名称、列名和列的数据类型等。

4. 插入数据:可以使用INSERT语句将数据插入到表中。

语法类似于INSERT INTOtable_name (column1, column2, ...) VALUES (value1, value2, ...)。

5. 查询数据:可以使用SELECT语句从表中查询数据。

语法类似于SELECT column1,column2, ... FROM table_name WHERE condition。

可以使用WHERE子句来添加查询条件。

6. 更新数据:可以使用UPDATE语句更新表中的数据。

语法类似于UPDATE table_name SET column1 = value1, column2 = value2, ... WHERE condition。

可以使用WHERE子句来指定更新的行。

7. 删除数据:可以使用DELETE语句从表中删除数据。

语法类似于DELETE FROMtable_name WHERE condition。

可以使用WHERE子句来指定要删除的行。

8. 索引和约束:可以使用索引来提高查询性能,可以使用约束来保证数据的完整性和一致性。

可以使用CREATE INDEX语句创建索引,使用ALTER TABLE语句添加约束。

9. 事务管理:Oracle支持事务的概念,可以使用BEGIN TRANSACTION、COMMIT和ROLLBACK语句来管理事务。

Oracle基本操作《DOC命令》

Oracle基本操作《DOC命令》

系统权限在doc命令中启动Oracle(注意下文中<>为不存在只是为了标识)其中的一些权限为系统权限(都是用超级管理员授予的)1:启动SQL*PLUS:在相应盘符下输入:sqlplus / as sysdba;<默认的用户是SYS>2:启动监听器在相应盘符下输入:lsnrctl start(我的电脑默认在D盘下)3:启动实例在相应盘符下输入:oradim -starup -sid sjbitdb(我的电脑默认在D盘下)4:展示当前用户名在SQL语句中输入:show user;5:创建用户在SQL语句中输入:create user <用户名> identified by <用户密码> ;6:为用户创建会话权限在SQL语句中输入:grant create session to <用户名>;7:使用用户登录在相应盘符下语句中输入:sqlplus <用户名>/<密码> 注意后面没有分号。

8:为用户创建表权限在SQL语句中输入:grant create table to <用户名>;9:为用户创建表空间权限在SQL语句中输入:grant unlimited tablespace to <用户名>;(unlimited是没有任何限制的意思)10:创建表在SQL语句中输入:create table <表名称> (<列名> <数据类型>);(举例)11:向表中插入数据在SQL语句中输入:insert into <表名称> values(<值>);(举例)12:查询表中的数据在SQL语句中输入:select * form <表名称>;13:删除表在SQL语句中输入:drop table <表名称>;14:撤销用户的会话权限在SQL语句中输入:revoke create session fr om <用户名>;15:撤销用户的创建表权限在SQL语句中输入:revoke create table from <用户名>;16:撤销用户的创建表空间权限在SQL语句中输入:revoke unlimited tablespace from <用户名>;17:查询当前用户拥有哪些系统权限在SQL语句中输入:select * from user_sys_privs;(实际上展示的是一个视图) 18:删除用户:在SQL语句中输入:drop user <用户名>;19:把某个系统权限权限授权给所有用户:在SQL语句中输入:grant (create session<会话权限也就是允许某管理员登录的权限>) 、(create table<创建表权限>)、(unlimited tablespace<创建表空间权限>) 、(create any table<创建任意表权限>) to public;对象权限简单来说超级管理员拥有的权限叫做系统权限,普通用户拥有的权限叫做对象权限。

oracle数据库常用的操作命令

oracle数据库常用的操作命令
20000101 12:01:01
问题提出:
1、用户需要对数据库用户下的每一张表都执行一个相同的SQL操作,这时,一遍、一遍的键入SQL语句是很麻烦的
实现方法:
SQL> set heading off --禁止输出列标题
SQL> set feedback off --禁止显示最后一行的计数反馈信息
alter user system indentified by test
~~~~~~~~~~~~~~~~~~~~~~``
Oracle 常用指令 SQL> show all --查看所有68个系统变量值
SQL> show user --显示当前连接用户
SQL> show error --显示错误
列出当前用户下所有同义词的定义,可用来测试同义词的真实存在性
select 'desc '||tname from tab where tabtype='SYNONYM';
查询当前用户下所有表的记录数
select 'select '''||tname||''',count(*) from '||tname||';' from tab where tabtype='TABLE';
(注:a后面跟2个空格)
(c)hange/old/new 在当前行用新的文本替换旧的文本 c/*/tname 结果:select tname from tab;
(c)hange/text 从当前行删除文本 c/tab 结果:select tname from ;

oracle 使用scott操作汇总

oracle 使用scott操作汇总
create table class(id number(9) not null primary key,classname varchar2(40) not null);
drop
drop table classes;
alter
alter table class add (address varchar2(40),type varchar2(40),d1 number);
insert into salgrade values(6,5001,5000);
insert into bonus values('SMITH','CLERK',968,10);
insert into bonus values('SMITH','CLERK',968,100);
update
begin
null;
答案:
1.列出至少有一个员工的所有部门。
select deptno from emp group by deptno having count(*)>1;
解析:该语句主要学习分组函数group by,以及对分组后过滤的条件函数having。需要注意的是使用了分组函数语句的select字段中不能包含group by后没有的字段,原因是如果显示非分组的字段就可能显示多条记录,就达不到按某字段分组的目的。Having只能用在分组函数group by后,相当于对分组后的记录做where条件过滤。
select ename,sal,(select dname from dept a where a.deptno=b.deptno)as dname from emp b;

常用oracle数据库命令

常用oracle数据库命令

常用oracle数据库命令
1. 启动Oracle数据库
$ sqlplus /nolog
SQL> connect / as sysdba
SQL> startup
3. 创建表空间
创建表空间的命令是:
SQL> create tablespace 表空间名 datafile '路径名' size 大小;
6. 创建用户
7. 删除用户
删除用户的命令是:
8. 授权用户
SQL> grant 权限 to 用户名;
9. 撤销用户的权限
11. 查看表结构
查看表结构的命令是:
SQL> desc 表名;
SQL> create table 表名 (列名数据类型, 列名数据类型, …);
13. 删除表
14. 插入数据
插入数据的命令是:
SQL> update 表名 set 列名=新值 where 某条件;
18. 创建索引
20. 查看索引
21. 查询相关信息
查询相关信息的命令是:
SQL> select * from v$session; -- 查看会话 22. 查看数据库版本
24. 备份数据库
$ exp 用户名/密码 file=备份文件路径备注:以上命令均需要在Oracle登录后进行。

oracle的用法

oracle的用法

oracle的用法Oracle是一个关系型数据库管理系统,常用于企业级应用的数据存储和管理。

以下是Oracle的常见用法:1. 数据库管理:Oracle提供了各种工具和功能来管理和维护数据库,包括创建和管理表、索引、视图、约束等数据库对象,了解数据库的状态和性能,备份和恢复数据库等。

2. 数据查询和操作:通过结构化查询语言(SQL),用户可以对Oracle数据库进行数据查询、插入、更新和删除操作。

可以根据条件过滤数据、排序和聚合数据,实现复杂的查询需求。

3. 数据安全和权限控制:Oracle提供了安全性功能,如用户认证、权限管理和数据加密等,以保护数据的机密性和完整性。

可以为不同用户或用户组分配不同的权限,限制对数据库对象的访问和修改。

4. 数据备份和恢复:通过Oracle的备份和恢复功能,可以定期备份数据库,以防止数据丢失或损坏。

在数据库发生故障时,可以使用备份文件进行数据恢复,保证业务的连续性。

5. 数据复制和集群:Oracle支持数据库的复制和集群部署。

通过数据库复制,可以将数据复制到不同的服务器上,以提高数据的可用性和性能。

通过数据库集群,可以将多个服务器连接在一起,形成一个逻辑上的单一数据库,实现高可用性和负载均衡。

6. 业务应用开发:Oracle提供了各种开发工具和API,可用于开发基于Oracle数据库的企业级应用。

可以使用编程语言(如Java、C#等)和数据库连接库(如JDBC、ODBC等)与Oracle数据库进行交互,实现应用程序的数据存储和访问。

7. 数据分析和报表:Oracle提供了数据分析和报表工具,如Oracle Business Intelligence(BI),以帮助用户从数据库中提取和分析数据。

可以创建统计报表、图表和仪表盘,帮助业务决策和分析。

总之,Oracle作为一种强大的数据库管理系统,通常用于企业级应用的数据存储、管理和分析。

它具有丰富的功能和工具,可满足各种数据管理和应用开发的需求。

oracle windows操作语句

oracle windows操作语句

oracle windows操作语句Oracle是一种关系型数据库管理系统,广泛应用于企业级应用程序开发中。

在Windows操作系统上,可以使用Oracle SQL Developer或SQL*Plus等工具执行Oracle数据库操作语句。

下面列举了十个常用的Oracle Windows操作语句。

1. 创建表(CREATE TABLE)CREATE TABLE语句用于创建数据库中的表。

例如,创建一个名为“employees”的表,包含id、name和age三个字段:```sqlCREATE TABLE employees (id NUMBER,name VARCHAR2(100),age NUMBER);```2. 插入数据(INSERT INTO)INSERT INTO语句用于向表中插入数据。

例如,向“employees”表插入一条记录:```sqlINSERT INTO employees (id, name, age)VALUES (1, 'John', 25);```3. 更新数据(UPDATE)UPDATE语句用于更新表中的数据。

例如,将“employees”表中id为1的记录的年龄改为30:```sqlUPDATE employeesSET age = 30WHERE id = 1;```4. 删除数据(DELETE)DELETE语句用于删除表中的数据。

例如,删除“employees”表中id为1的记录:```sqlDELETE FROM employeesWHERE id = 1;```5. 查询数据(SELECT)SELECT语句用于从表中查询数据。

例如,查询“employees”表中的所有记录:```sqlSELECT * FROM employees;```6. 创建索引(CREATE INDEX)CREATE INDEX语句用于在表上创建索引,以提高查询性能。

Unit2: Oracle字符串操作 、 Oracle数值操作 、 Oracle日期操作 、 空值操作

Unit2: Oracle字符串操作 、 Oracle数值操作 、 Oracle日期操作 、 空值操作

1.Oracle字符串操作1.1 字符串类型1.1.1 char和varch2类型char和varchar2类型都是用来表示字符串数据类型,用来在表示存放字符串信息,例如姓名、职业、地址等。

char存放定长字符串,如果数据村不满定长长度,则补齐空格;varchar2存放变长字符,实际数据有多少长度则占用多少。

· char(100):10个字母,补齐90个空格,实际占用100个字节。

· varchar2(100):10个字母,实际占用10个字节。

char类型浪费空间换取查询时间的缩短,varchar2节省空间查询时间较char 类型要长。

字符串按照自然顺序排序。

1.1.2 char和varchar2的存储编码字符串在数据库中存储的默认单位是字节,也可显式定为字符。

例:1)char(10),等价于char(10 byte);2)如果指定单位为字符:char(10 char),20个字节;3)varchar2(10),等价于varchar2(10 byte)4)指定单位为字符:varchar2(10 char),20个字节每一个英文字符占用一个字节,每个中文字符按编码不同,占用2~4个字节: 1)ZHS16GBK:2个字节2)UTF-8:2~4个字节1.1.3 char和varchar2的最大长度char类型的最大取值为2000字节。

例:char(2000):采用ZHS16GBK编码,最多保存2000个英文字符,1000个汉字。

varchar2最大取值为4000字节。

例:varchar2(2000):采用ZHS16GBK编码,最多保存4000个英文字符,2000个汉字。

char如果不指定长度,默认1个字节,varchar2必须指定长度。

1.1.4 long和clob类型long类型可以认为是varchar2的加长版,用来存储长字符串,最多达2GB的字符串数据,但是long类型有诸多限制,不建议使用:1)每个表只能有一个long类型列;2)不能作为主键;3)不能建立索引;4)不能出现在查询条件中等等clob用来存储定长或变长字符串,最多达4GB的字符串数据,Oracle建议开发中用clob替代long类型。

oracle归档操作步骤

oracle归档操作步骤

oracle归档操作步骤
Oracle的归档操作主要包括开启归档模式、修改归档日志路径以及删除归档日志等步骤。

1.查看归档模式是否开启以及重做日志存放路径。

可以通过执行SQL
命令archive log list来查看归档日志的状态,以及SELECT * FROM v$logfile ORDER BY group#;来查看重做日志的存放路径。

2.开启归档模式。

首先关闭数据库实例,然后启动到mount状态,接着
修改数据库为归档模式,最后打开数据库。

3.修改归档日志路径。

如果需要修改归档日志的路径,可以通过修改初
始化参数log_archive_dest_1的值来实现。

注意新路径必须已经存在,且每个目录都必须存在。

4.实验是否成功将路径做了修改。

可以通过切换重做日志的活跃状态来
触发日志备份,生成新的归档日志,并检查新的归档日志是否保存在设置的目录下。

5.删除归档日志。

首先通过执行crosscheck archivelog all;命令
来检查归档日志文件,然后通过执行delete expired archivelog all;命令来删除校验失败的记录。

Oracle常用命令大全(很有用,做笔记)

Oracle常用命令大全(很有用,做笔记)

Oracle常⽤命令⼤全(很有⽤,做笔记)⼀、ORACLE的启动和关闭1、在单机环境下要想启动或关闭ORACLE系统必须⾸先切换到ORACLE⽤户,如下su - oraclea、启动ORACLE系统oracle>svrmgrlSVRMGR>connect internalSVRMGR>startupSVRMGR>quitb、关闭ORACLE系统oracle>svrmgrlSVRMGR>connect internalSVRMGR>shutdownSVRMGR>quit启动oracle9i数据库命令:$ sqlplus /nologSQL*Plus: Release 9.2.0.1.0 - Production on Fri Oct 31 13:53:53 2003Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.SQL> connect / as sysdbaConnected to an idle instance.SQL> startup^CSQL> startupORACLE instance started.2、在双机环境下要想启动或关闭ORACLE系统必须⾸先切换到root⽤户,如下su - roota、启动ORACLE系统hareg -y oracleb、关闭ORACLE系统hareg -n oracleOracle数据库有哪⼏种启动⽅式说明:有以下⼏种启动⽅式:1、startup nomount⾮安装启动,这种⽅式启动下可执⾏:重建控制⽂件、重建数据库读取init.ora⽂件,启动instance,即启动SGA和后台进程,这种启动只需要init.ora⽂件。

2、startup mount dbname安装启动,这种⽅式启动下可执⾏:数据库⽇志归档、数据库介质恢复、使数据⽂件联机或脱机,重新定位数据⽂件、重做⽇志⽂件。

oracle基本操作

oracle基本操作

oracle基本操作Oracle是一种关系数据库管理系统,它是世界上最受欢迎的企业级数据库。

它被各种企业广泛使用,它的功能非常强大,包括数据安全、访问控制、事务处理、性能优化、数据备份和恢复等。

本文将介绍Oracle的基本操作,包括如何创建、修改和删除表,如何插入、更新和删除数据,以及如何查询和导出数据。

这些操作对于初学者来说非常重要,也是使用Oracle的基础。

1.创建表格在Oracle中,创建表的语法如下:CREATE TABLE table_name ( column1 datatype, column2 datatype, column3 datatype, .... );其中,table_name是要创建的表的名称,column1、column2等是列名,datatype是列的数据类型。

例如,创建一个名为“employees”的表格,并添加列“id”、“name”和“salary”,则可以使用以下命令:CREATE TABLE employees ( id NUMBER(4) NOT NULL, name VARCHAR2(15) NOT NULL, salary NUMBER(7,2), PRIMARY KEY (id) );注意,id和name列设置为NOT NULL,这表示这两列不能为空。

salary列的数据类型为NUMBER,并设置了精度和小数位数。

2.修改表格如果需要修改表格,可以使用ALTER TABLE命令。

例如,如果想向employees表格添加新的列“address”,可以使用以下命令:ALTER TABLE employees ADD address VARCHAR2(50);如果需要删除表格中的列,可以使用以下命令:ALTER TABLE employees DROP COLUMN address;3.删除表格如果需要删除一个表格,可以使用以下命令:DROP TABLE table_name;例如,删除名为“employees”的表格:DROP TABLE employees;如果不小心使用了错误的命令或者删除的表格不是自己想要的,则可以使用RECOVER命令来找回删除的表格。

oracle数据库增删改查基本语句举例

oracle数据库增删改查基本语句举例

oracle数据库增删改查基本语句举例Oracle数据库是一种关系型数据库管理系统,具备强大的数据处理和查询功能。

以下是10个基本的Oracle数据库的增删改查语句示例:1. 插入数据:INSERT INTO 表名 (列1, 列2, 列3) VALUES (值1, 值2, 值3);示例:INSERT INTO employees (id, name, age) VALUES (1, '张三', 25);2. 查询数据:SELECT 列1, 列2, 列3 FROM 表名;示例:SELECT id, name, age FROM employees;3. 更新数据:UPDATE 表名 SET 列1 = 值1, 列2 = 值2 WHERE 条件;示例:UPDATE employees SET age = 26 WHERE id = 1;4. 删除数据:DELETE FROM 表名 WHERE 条件;示例:DELETE FROM employees WHERE id = 1;5. 创建表:CREATE TABLE 表名 (列1 数据类型,列2 数据类型,列3 数据类型);示例:CREATE TABLE employees (id NUMBER,name VARCHAR2(50),age NUMBER);6. 修改表:ALTER TABLE 表名ADD 列数据类型;示例:ALTER TABLE employees ADD salary NUMBER;7. 删除表:DROP TABLE 表名;示例:DROP TABLE employees;8. 创建索引:CREATE INDEX 索引名 ON 表名 (列1, 列2);示例:CREATE INDEX idx_name ON employees (name);9. 修改索引:ALTER INDEX 索引名 RENAME TO 新索引名;示例:ALTER INDEX idx_name RENAME TO idx_employee_name;10. 删除索引:DROP INDEX 索引名;示例:DROP INDEX idx_name;以上是一些基本的Oracle数据库的增删改查语句示例。

oracle基本操作命令

oracle基本操作命令

oracle基本操作命令Oracle是目前最为流行和广泛使用的数据库管理系统之一,它可以帮助企业轻松高效地进行数据管理和分析。

作为一个Oracle数据库管理员或开发人员,了解一些基本操作命令,对于日常工作和维护数据库是非常必要的。

下面我们来简单介绍一些Oracle基本操作命令。

1. 登录数据库Oracle的登录命令为:sqlplus /nolog,它会打开一个sql>的命令行,提示用户输入数据库账号和密码登陆。

2. 创建表格Oracle通过create table命令来创建表格。

它的基本格式为:create table tablename (columnname datatype, columnnamedatatype, …);3. 插入数据通过insert命令可以将数据插入表格中。

格式为:insert into tablename(column1, column2, ...) values(value1, value2, ...);4. 查询数据Oracle的查询语句为select。

例如:select * from tablename,将会显示表格中的所有数据。

5. 更新数据通过update命令可以更新表格中的数据。

格式为:update tablename set column=value where condition;6. 删除数据和表格Oracle的删除语句为delete和drop。

delete用于删除表格中的数据,格式为:delete from tablename where condition;而drop则是直接删除整个表格,格式为:drop table tablename;以上是Oracle基本操作命令的简单介绍。

当然,Oracle还有很多高级功能和操作命令,需要用户自行查找学习。

掌握一些基本操作命令,可以使用户更好的管理和维护Oracle数据库,提高工作效率。

oracle 数据库管理员日常操作手册

oracle 数据库管理员日常操作手册

Oracle数据库管理员日常操作手册===================一、用户管理------### 1.1 创建用户1. 打开Oracle数据库管理工具(如SQL*Plus或SQL Developer)。

2. 使用管理员账户(如sys)登录。

3. 执行以下SQL语句创建用户:```sqlCREATE USER username IDENTIFIED BY password;```其中,`username`为用户名,`password`为密码。

4. 可选:为新用户分配表空间。

例如,执行以下语句将用户分配到默认的表空间:```sqlALTER USER username DEFAULT TABLESPACE tablespace_name;```其中,`tablespace_name`为要分配给用户的表空间的名称。

### 1.2 修改用户密码1. 打开Oracle数据库管理工具。

2. 使用管理员账户登录。

3. 执行以下SQL语句修改用户密码:```sqlALTER USER username IDENTIFIED BY new_password;```其中,`username`为要修改密码的用户名,`new_password`为用户的新密码。

### 1.3 删除用户1. 打开Oracle数据库管理工具。

2. 使用管理员账户登录。

3. 执行以下SQL语句删除用户:```sqlDROP USER username;```其中,`username`为要删除的用户名。

二、数据库备份与恢复----------### 2.1 执行完整备份1. 打开Oracle数据库管理工具(如Enterprise Manager)。

2. 选择要进行备份的数据库。

3. 执行备份命令。

通常使用类似以下的命令:```bashRMAN> RUN {2> ALLOCATE CHANNEL c1 DEVICE TYPE DISK;3> BACKUP DATABASE FORMAT '/path/to/backup/location/backup_date' PLUS ARCHIVELOG;4> }```其中,`/path/to/backup/location/`为备份文件的存储路径,`backup_date`为备份日期和时间。

oracle数据库命令大全

oracle数据库命令大全

更改用户密码
sql>alter user 管理员 identified by 密码;
创建表空间的数据文件
sql>create tablespace test datafile 'd:\oracle\binbo.dbf' size 10m;
创建用户
sql>create user 用户名 identified by 密码;
操作表结构数据库定义语言命令
(不记录在日志文件中)
create table建表
sql>create table test(name varchar2(20),age date,sex char(2));
sql>insert into test(name,age,sex) values('aa',sysdate,'男');
删除隐藏的列 SQL>alter table studen drop unused columns;
向表中加入约束 SQL>alter table studen add constraint pk primary key(stuno);
删除约束 SQL>alter table studen drop constraint pk;
打开监听器
lsnrctl start
关闭服务器
net stop OracleServiceORCL
关闭监听器 ຫໍສະໝຸດ lsnrctl stop 清屏
clear screen
数据字典 ===========desc user_views(关键词)
查看当前用户的角色
SQL>select * from user_role_privs;

oracle语句大全及用法

oracle语句大全及用法

oracle语句大全及用法Oracle语句是Oracle数据库中用于管理和操作数据的SQL语句。

以下是一些常用的Oracle语句及其用法:1. 数据定义语句(DDL)CREATE DATABASE:用于创建新的数据库。

CREATE TABLE:用于创建新的表。

语法如下:sql`CREATE TABLE table_name (column1 datatype1, column2 datatype2, ...);`ALTER TABLE:用于修改现有的表结构,如添加、删除或修改列。

DROP TABLE:用于删除现有的表。

CREATE INDEX:用于在表上创建索引,以提高查询性能。

2. 数据操纵语句(DML)SELECT:用于从表中查询数据。

语法如下:sql`SELECT column1, column2, ... FROM table_name;`INSERT INTO:用于向表中插入新的数据行。

语法如下:sql`INSERT INTO table_name (column1, column2, ...) VALUES (value1, value2, ...);`UPDATE:用于修改表中的现有数据。

DELETE:用于从表中删除数据。

3. 数据控制语句(DCL)GRANT:用于授予用户或角色对数据库对象的访问权限。

REVOKE:用于撤销用户或角色对数据库对象的访问权限。

4. 事务控制语句(TCL)COMMIT:用于提交当前事务,使所做的更改永久生效。

ROLLBACK:用于撤销当前事务,恢复到事务开始前的状态。

SAVEPOINT:用于在事务中设置保存点,以便在之后的某个时刻可以回滚到该点。

5. 其他常用语句DECLARE:用于声明变量或常量,并为其分配数据类型和初始值。

BEGIN ... END:用于定义PL/SQL代码块的开始和结束。

IF ... THEN ... ELSE:用于条件判断,根据条件执行不同的操作。

(完整版)ORACLE命令大全

(完整版)ORACLE命令大全

ORACLE命令大全1. 执行一个SQL脚本文件SQL>start file_nameSQL>@ file_name我们可以将多条sql语句保存在一个文本文件中,这样当要执行这个文件中的所有的sql语句时,上面的任一命令即可,这类似于dos中的批处理。

2. 对当前的输入进行编辑SQL>edit3. 重新运行上一次运行的sql语句SQL>/4. 将显示的内容输出到指定文件SQL> SPOOL file_name在屏幕上的所有内容都包含在该文件中,包括你输入的sql语句。

5. 关闭spool输出SQL> SPOOL OFF只有关闭spool输出,才会在输出文件中看到输出的内容。

6.显示一个表的结构SQL> desc table_name7. COL命令:主要格式化列的显示形式。

该命令有许多选项,具体如下:COL[UMN] [{ column|expr} [ option ...]]Option选项可以是如下的子句:ALI[AS] aliasCLE[AR]FOLD_A[FTER]FOLD_B[EFORE]FOR[MAT] formatHEA[DING] textJUS[TIFY] {L[EFT]|C[ENTER]|C[ENTRE]|R[IGHT]}LIKE { expr|alias}NEWL[INE]NEW_V[ALUE] variableNOPRI[NT]|PRI[NT]NUL[L] textOLD_V[ALUE] variableON|OFFWRA[PPED]|WOR[D_WRAPPED]|TRU[NCATED]1). 改变缺省的列标题COLUMN column_name HEADING column_headingFor example:Sql>select * from dept;DEPTNO DNAME LOC---------- ---------------------------- ---------10 ACCOUNTING NEW YORK sql>col LOC heading locationsql>select * from dept;DEPTNO DNAME location--------- ---------------------------- -----------10 ACCOUNTING NEW YORK2). 将列名ENAME改为新列名EMPLOYEE NAME并将新列名放在两行上:Sql>select * from empDepartment name Salary---------- ---------- ----------10 aaa 11SQL> COLUMN ENAME HEADING ’Employee|Name’Sql>select * from empEmployeeDepartment name Salary---------- ---------- ----------10 aaa 11note: the col heading turn into two lines from one line.3). 改变列的显示长度:FOR[MAT] formatSql>select empno,ename,job from emp;EMPNO ENAME JOB---------- ---------- ---------7369 SMITH CLERK7499 ALLEN SALESMAN7521 WARD SALESMANSql> col ename format a40EMPNOENAME JOB ---------- ---------------------------------------- --------- 7369SMITH CLERK 7499ALLEN SALESMA 7521WARD SALESMAN4). 设置列标题的对齐方式JUS[TIFY] {L[EFT]|C[ENTER]|C[ENTRE]|R[IGHT]}SQL> col ename justify centerSQL> /EMPNO ENAME---------- ---------------------------------------- --------- 7369SMITH CLERK 7499ALLEN SALESMA 7521WARD SALESM 对于NUMBER型的列,列标题缺省在右边,其它类型的列标题缺省在左边5). 不让一个列显示在屏幕上NOPRI[NT]|PRI[NT]SQL> col job noprintSQL> /EMPNO ENAME---------- ----------------------------------------7369 SMITH7499 ALLEN7521 WARD6). 格式化NUMBER类型列的显示:SQL> COLUMN SAL FORMAT $99,990SQL> /EmployeeDepartment Name Salary Commission---------- ---------- --------- ----------30 ALLEN $1,600 3007). 显示列值时,如果列值为NULL值,用text值代替NULL值COMM NUL[L] textSQL>COL COMM NUL[L] text8). 设置一个列的回绕方式WRA[PPED]|WOR[D_WRAPPED]|TRU[NCATED]COL1--------------------HOW ARE YOU?SQL>COL COL1 FORMAT A5SQL>COL COL1 WRAPPEDCOL1-----HOW ARE YOU?SQL> COL COL1 WORD_WRAPPEDCOL1-----HOWAREYOU?SQL> COL COL1 WORD_WRAPPEDCOL1-----HOW A9). 显示列的当前的显示属性值SQL> COLUMN column_name10). 将所有列的显示属性设为缺省值SQL> CLEAR COLUMNS8. 屏蔽掉一个列中显示的相同的值BREAK ON break_columnSQL> BREAK ON DEPTNOSQL> SELECT DEPTNO, ENAME, SALFROM EMPWHERE SAL < 2500ORDER BY DEPTNO;DEPTNO ENAME SAL---------- ----------- ---------10 CLARK 2450MILLER 130020 SMITH 800ADAMS 11009. 在上面屏蔽掉一个列中显示的相同的值的显示中,每当列值变化时在值变化之前插入n个空行BREAK ON break_column SKIP nSQL> BREAK ON DEPTNO SKIP 1SQL> /DEPTNO ENAME SAL---------- ----------- ---------10 CLARK 2450MILLER 130020 SMITH 800ADAMS 110010. 显示对BREAK的设置SQL> BREAK11. 删除6、7的设置SQL> CLEAR BREAKS12. Set 命令:该命令包含许多子命令:SET system_variable valuesystem_variable value 可以是如下的子句之一:APPI[NFO]{ON|OFF|text}ARRAY[SIZE] {15|n}AUTO[COMMIT]{ON|OFF|IMM[EDIATE]|n}AUTOP[RINT] {ON|OFF}AUTORECOVERY [ON|OFF]AUTOT[RACE] {ON|OFF|TRACE[ONLY]} [EXP[LAIN]] [STAT[ISTICS]] BLO[CKTERMINATOR] {.|c}CMDS[EP] {;|c|ON|OFF}COLSEP {_|text}COM[PATIBILITY]{V7|V8|NATIVE}CON[CAT] {.|c|ON|OFF}COPYC[OMMIT] {0|n}COPYTYPECHECK {ON|OFF}DEF[INE] {&|c|ON|OFF}DESCRIBE [DEPTH {1|n|ALL}][LINENUM {ON|OFF}][INDENT {ON|OFF}] ECHO {ON|OFF}EDITF[ILE] file_name[.ext]EMB[EDDED] {ON|OFF}ESC[APE] {\|c|ON|OFF}FEED[BACK] {6|n|ON|OFF}FLAGGER {OFF|ENTRY |INTERMED[IATE]|FULL}FLU[SH] {ON|OFF}HEA[DING] {ON|OFF}HEADS[EP] {||c|ON|OFF}INSTANCE [instance_path|LOCAL]LIN[ESIZE] {80|n}LOBOF[FSET] {n|1}LOGSOURCE [pathname]LONG {80|n}LONGC[HUNKSIZE] {80|n}MARK[UP] HTML [ON|OFF] [HEAD text] [BODY text] [ENTMAP {ON|OFF}] [SPOOL {ON|OFF}] [PRE[FORMAT] {ON|OFF}]NEWP[AGE] {1|n|NONE}NULL textNUMF[ORMAT] formatNUM[WIDTH] {10|n}PAGES[IZE] {24|n}PAU[SE] {ON|OFF|text}RECSEP {WR[APPED]|EA[CH]|OFF}RECSEPCHAR {_|c}SERVEROUT[PUT] {ON|OFF} [SIZE n] [FOR[MAT] {WRA[PPED]|WOR[D_ WRAPPED]|TRU[NCATED]}]SHIFT[INOUT] {VIS[IBLE]|INV[ISIBLE]}SHOW[MODE] {ON|OFF}SQLBL[ANKLINES] {ON|OFF}SQLC[ASE] {MIX[ED]|LO[WER]|UP[PER]}SQLCO[NTINUE] {> |text}SQLN[UMBER] {ON|OFF}SQLPRE[FIX] {#|c}SQLP[ROMPT] {SQL>|text}SQLT[ERMINATOR] {;|c|ON|OFF}SUF[FIX] {SQL|text}TAB {ON|OFF}TERM[OUT] {ON|OFF}TI[ME] {ON|OFF}TIMI[NG] {ON|OFF}TRIM[OUT] {ON|OFF}TRIMS[POOL] {ON|OFF}UND[ERLINE] {-|c|ON|OFF}VER[IFY] {ON|OFF}WRA[P] {ON|OFF}1). 设置当前session是否对修改的数据进行自动提交SQL>SET AUTO[COMMIT] {ON|OFF|IMM[EDIATE]| n}2).在用start命令执行一个sql脚本时,是否显示脚本中正在执行的SQL语句SQL> SET ECHO {ON|OFF}3).是否显示当前sql语句查询或修改的行数SQL> SET FEED[BACK] {6|n|ON|OFF}默认只有结果大于6行时才显示结果的行数。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
HKEY_LOCAL_MACHINE\system\ControlSet002\services\所有oracle的服务,按del键删除掉
HKEY_LOCAL_MACHINE\system\ControlSet003\services\所有oracle的服务,按del键删除掉
HKEY_LOCAL_MACHINE\system\ControlSet\services\所有oracle的服务,按del键删除掉
查询工作岗位是销售员或者是办事的员的,并且工资大于1200
select * from emp
where
(job='CLERK' or job='SALESMAN') and sal>1200;
范围判断between...and...
查询雇员工资在1500-3000之间:
select * from emp
select length('helloworld') from dual;
select replace('helloworld','l','z') from dual;
显示出所有雇员的姓名及姓名后的三个字符
select ename,substr(ename,length(ename)-2,3) from emp;
如果要显示当前的日期,则可以使用sysdate
select sysdate from dual;
使用日期可以进行如下的四则运算:
日期+数值=日期:表示若干天之后的那个日期
select sysdate+3 from dual;
日期-数值=日期:表示若干天之前的那个日期
select sysdate-3 from dual;
next_day(日期,星期几)当前所指定的日期的下一个星期几的日期
add_months(日期,数值)当前日期所在的月份+数值,所在的日期
select lasபைடு நூலகம்_day(sysdate) from dual;
select next_day(sysdate,'星期一') from dual;
select ename,substr(ename,-3,3) from emp;(负数代表反方向截取)
数值函数
四舍五入 round()
截断小数位 trunc()
取模 mod()
select round(123.5689) from dual;
select round(123.5689,2) from dual;(四舍五入,但保留了两个小数)
select * from emp
where
ename like '_A%';
还可以用在日期格式:
select * from emp where hiredate like '%1%' or sal like'%1%';
排序order by
select * from emp order by sal asc;默认采用升序
select upper('smith') from dual;
select * from emp where ename=Upper('Smith');
大写转换成小写:
select lower('SMITH') from dual;
第一个英文字母大写,其余的小写:
select initcap('china') from dual;
5 SQLPLUS
在DOS中使用SQLPLUS可以进入oracle。
SQLPLUSW.EXE,在键盘的方向键是无效的。ed sql.sql @sql.sql可以在文本编辑器中编辑SQL
oracle可以是用格式化操作,进行输出的格式化:
set pagesize 100;
set linesize 300;
where关系运算,逻辑运算
要求i:查询出所有雇员的,工资》1500
select * from emp
where
sal>1500;
查询出工作岗位是clerk所有雇员
select * from emp
where
job='CLERK';
查询出所有工作岗位不是Clerk:
select round(123.5689,-2) from dual;
select trunc(123.5689) from dual;
select trunc(123.5689,2) from dual;
select trunc(123.5689,-2) from dual;
日期函数:
select * from scott.emp;
如果需要访问操作系统中的命令,则可以是用:Host 最为前缀进行访问
Host copy d:\1.txt d:\2.txt;
关闭数据库实例服务:
shutdown immediate
启动数据库实例服务:
startup
6 SQL
DML 数据操作语句。 查询,修改
DDL 数据定义语句。
DCL 定义用户权限的。
7 简单查询:查询出一张表中所有符合条件的记录
emp:员工表
empno:雇员的编号
ename:雇员的姓名
job:工作岗位
mgr:对应领导的编号
hiredate:雇佣日期
sal:基本工资
select add_months(sysdate,3) from dual;
求出每个雇员到现在的雇佣的月份数:
select ename,job,(sal+300)*12+sal nianxi from emp;
在简单查询中可以||表实现连接
select empno||ename from emp;
select empno|| ',' ||ename from emp;可以连接字符串常量
限定查询
||连接,concat
select concat('张三','李四') from dual;
字符串的截取:substr()
字符串的长度:length()
内容替换:replace()
select substr('helloworld',2,3) from dual;
select substr('helloworld',2) from dual;
select * from emp
where
empno in(7369,7566,7839);
like模糊查询:
匹配单个字符:_
匹配多个字符:%
查询以字符A开头的所有雇员信息:
select * from emp
where
ename like 'A%';
查询所有第二个字符是A的所有雇员信息:
日期-日期=数值:表示两个日期之间相隔的天数
将雇员的雇佣日期到现在相隔多少天:
select sysdate-hiredate from emp;
select trunc(sysdate-hiredate) from emp;
日期函数:
last_day(日期):当前日期所在的月份的最后一天的日期
3 OracleOraDb10g_home1TNSListener:监听服务,如通有远程的客户端需要连接,并且如果有其他的应用程序需要访问oracle,这个服务必须要启动
OracleServiceAMBOW:数据库的实例服务,保存数据库的信息服务的。
4 卸载
运行卸载程序
重新启动电脑,手动删除磁盘上对应的文件
where
sal between 1500 and 3000;(包含1500,3000这个两个值)
还可以用在日期范围:
查询所有在1981年入职的所有雇员信息:
select * from emp
where
hiredate between '01-1月-81' and '31-12月-81';
select * from emp
where
job<>'CLERK';
select * from emp
where
job!='CLERK';
select * from emp
where
NOT(job='CLERK');
多条件的连接(and or)
select * from emp order by sal desc;降序
select * from emp order by sal desc ,hiredate asc;
函数
字符函数
数值函数
日期函数
转换函数
通用函数
字符函数:
小写函数转化成为大写函数:(dual虚拟表)
判断是否为空is null ,is not null
查询出所有没有奖金的雇员信息
select * from emp
where
comm is null;
是否在指定范围的in运算:
select * from emp
where
相关文档
最新文档