一 安装oracle数据库成功之后,会显示相关的数据库信息:
全局数据库名:oracle 系统标识符:oracle
服务器参数文件名:c:\oracle\product\10.2.0\db_1/dbs/spfileoracle.ora
Database Control URL为
数据库账户:SYS,SYSTEM,DBSNMP,SYSMAN 密码:oracle iSQL*Plus URL 为:
iSQL*Plus DBA URL 为:

查看C:\oracle\product\10.2.0\db_1\install\portlist.ini文件获得相应的OEM为:
二 SQLPLUS工具
SQLPLUS的主要功能为:输入,运行和调试SQL语句和PL/SQL块;执行管理数据库命令;处理数据,生成报表,格式化查询结果
1.启动SQLPLUS: scott/tiger@oracle 2.获取SQLPLUS命令的帮助: SQL> help
index; //获得oracle所有命令 SQL> help list;
//显示出list命令的帮助信息
3.退出SQLPLUS(在退出SQLPLUS之前,应该使用commit命令提交事务): SQL>
quit或者SQL> exit; 4.在SQLPLUS中输入三种类型的命令: 1)
SQL命令:用于操作数据库中的信息 2) PL/SQL块:用于操作数据库中的信息 3)
SQLPLUS命令:用于编辑,保存,运行SQL命令,PL/SQL块,格式化查询结果,自定义SQLPLUS环境等.
1),2)可以访问数据库,执行时将命令暂时存放到SQL缓冲区中.
3)不可以访问数据库,SQLPLUS命令也不能被存放到SQL缓冲区中. 5.缓冲区命令:
SQL>SELECT ; //把SELECT;保存到缓冲区中 SQL>EDIT;
//编辑缓冲区中的内容 SQL>RUN 或者SQL>/ //执行缓冲区中的内容
SQL>CLEAR SCREEN //清除SQLPLUS的屏幕及屏幕缓冲区 6.运行命令
在SQLPLUS中可以使用三种方式运行SQL语句和PL/SQL块:1)命令行方式
2)SQL缓冲区方式 3)脚本文件方式 1)命令行方式:
1.1)以命令行方式运行SQL命令,只需要在输入完SQL语句之后,输入分号,按回车键即可
SQL> SELECT ename,sal FROM emp 2 WHERE deptno = 20;
1.2)以命令行方式运行PL/SQL块,只需要在输入完PL/SQL块之后,在新的一行输入前斜线,按回车键即可
SQL> SET SERVEROUTPUT ON SQL> BEGIN 2 DBMS_OUTPUT.PUT_LINE; 3
END; 4 /
1.3)EXECUTE命令,可以执行单条PL/SQL语句,不需要从缓冲区或脚本文件中执行.
SQL> SET SERVEROUTPUT ON SQL> EXEC
DBMS_OUTPUT.PUT_LINESQL缓冲区方式:
2.1)RUN命令:显示并运行当前存储在SQL缓冲区中的SQL语句或PL/SQL块,显示运行结果,
并使SQL缓冲区中的最后一行成为当前行 SQL> SELECT ename, sal FROM emp 2
WHERE deptno = 20 3 ; ENAME SAL ———- ———- SMITH 800 JONES
2975 SCOTT 3000 ADAMS 1100 FORD 3000 SQL> RUN 1 SELECT ename, sal
FROM emp 2 WHERE deptno = 20 3* ENAME SAL ———- ———- SMITH
800 JONES 2975 SCOTT 3000 ADAMS 1100 FORD 3000
2.2)/命令:运行当前存储在SQL缓冲区中的SQL命令或PL/SQL块,显示运行结果,
而不显示SQL缓冲区中的SQL命令或PL/SQL块,也不会将SQL缓冲区中的最后一行成为当前行
SQL> SET SERVEROUTPUT ON SQL> BEGIN 2 DBMS_OUTPUT.PUT_LINE; 3
END; 4 / HELLO,ORACLE! PL/SQL 过程已成功完成。 SQL> / HELLO,ORACLE!
PL/SQL 过程已成功完成。 2.3)菜单命令
选择”文件”->”运行”,它与RUN命令相同 3)脚本文件方式 3.1)START命令 格式:
START filename[.ext] [arg1 arg2 arg3…]
脚本文件:D:\test.sql内容如下: SELECT ename, sal FROM emp WHERE deptno =
&1 AND sal > &2; 使用START命令: SQL> START D:\test.sql 20 2500
原值 2: WHERE deptno = &1 新值 2: WHERE deptno = 20 原值 3: AND sal >
&2 新值 3: AND sal > 2500 ENAME SAL ———- ———- JONES 2975
SCOTT 3000 FORD 3000 3.2)@命令
@命令和START命令类似,区别在于:@命令既可以在SQLPLUS会话内部运行,也可以在命令行运行,
而START命令只能在SQLPLUS会话内运行. 7.替换变量命令
1)使用替换变量:其格式是在变量名称之前加一个&,以便在运行SQL命令时提示用户输入替换数据,
然后按输入数据运行SQL命令,如: SQL> SELECT &a FROM emp 2 WHERE deptno
= 20 3 AND job = ‘&b’; 输入 a 的值: ename 原值 1: SELECT &a FROM emp
新值 1: SELECT ename FROM emp 输入 b 的值: CLERK 原值 3: AND job = ‘&b’
新值 3: AND job = ‘CLERK’ ENAME ———- SMITH ADAMS
2)定义替换变量:事先用DEFINE命令定义替换变量,如: SQL> DEFINE a = CLERK
SQL> SELECT ename FROM emp 2 WHERE deptno = 20 3 AND job = ‘&a’; 原值
3: AND job = ‘&a’ 新值 3: AND job = ‘CLERK’ ENAME ———- SMITH ADAMS
3)查看替换变量 SQL> DEFINE a DEFINE A = “CLERK” 清除替换变量 SQL>
UNDEFINE a 8.与用户通信
可以使用PROMPT命令,PAUSE命令,ACCEPT命令与用户进行通信
1)PROMPT命令用于输出提示信息,以便使用户了解脚本文件的功能和运行情况
2)PAUSE命令用于暂停脚本文件的运行
3)ACCEPT命令可以让用户指定替换变量的类型,用PROMPT选项指定提示信息,
用HIDE选项隐藏输入,以便于用户输入替换变量 举例如下:
脚本文件:D:\test.sql内容如下: ACCEPT pwd PROMPT ‘请输入密码’ HIDE
PROMPT PROMPT 显示XX部门XX工种的员工姓名 PROMPT
========================== PROMPT 按键继续 PAUSE ACCEPT a NUMBER PROMPT
‘请输入部门:’ ACCEPT b CHAR PROMPT ‘请输入工种:’ SELECT ename FROM emp
WHERE deptno = &a AND job = ‘&b’; 该脚本文件运行结果为: SQL> START
D:\test.sql 请输入密码********* 显示XX部门XX工种的员工姓名
========================== 按键继续 请输入部门:20 请输入工种:CLERK 原值
2: WHERE deptno = &a 新值 2: WHERE deptno = 20 原值 3: AND job = ‘&b’
新值 3: AND job = ‘CLERK’ ENAME ———- SMITH ADAMS 9.绑定变量
1)定义绑定变量
可以使用VARIABLE命令来定义绑定变量.当在SQL语句或PL/SQL块中使用绑定变量时,
必须在绑定变量前加冒号.当直接给绑定变量赋值时,需要使用EXECUTE命令,例如:
SQL> VARIABLE no NUMBER SQL> EXECUTE :no := 7788 PL/SQL
过程已成功完成。 SQL> SELECT ename FROM emp WHERE empno = :no; ENAME
———- SCOTT 2)输出绑定变量 使用PRINT命令输出绑定变量,例如: SQL>
PRINT no NO ———- 7788 10.自定义SQLPLUS环境 SQL> SHOW ALL
//查看所有环境变量 SQL> SHOW linesize pagesize SQL> SET linesize
100 pagesize 24
//linesize代表行宽度,默认为80,pagesize表示每页显示的行数,默认为24
SQL> SHOW arraysize
//arraysize用于设置从数据库中一次提取的行数,默认为15 SQL> SET
arraysize 25 SQL> SHOW autocommit
//autocommit用于设置是否自动提交,默认为OFF SQL> SET autocommit on
SQL> SET colsep | //colsep 用于设置在选定列之间的分隔符,默认为空格
SQL> SELECT ename, sal FROM emp WHERE empno = 7788; ENAME | SAL
———-|———- SCOTT | 3000 SQL>SET heading off
//heading表示是否显示列标题,默认为ON SQL> SELECT ename, sal FROM emp
WHERE empno = 7788; SCOTT | 3000 SQL> SET serveroutput on
//SEVEROUTPUT用于控制是否显示存储过程的输出,默认为OFF SQL> EXEC
dbms_output.put_line; hello oracle PL/SQL 过程已成功完成。 SQL> SET
sqlprompt inputSQL> //sqlprompt用来设置SQLPLUS的命令提示符
inputSQL> SQL>SET time on
//time是否在SQLPLUS命令提示符前显示系统时间,默认设置为OFF 19:02:35
SQL> SQL>SET underline =
//underline用于设置下划线字符,默认值为”_” SQL>SELECT count
========== 14 SQL>STORE SET D:\setfile.sql //保存当前的SQLPLUS环境
已创建 file D:\setfile.sql 11.格式化查询结果 1)格式化列 SQL> COLUMN
ename HEADING 雇员 JUSTIFY CENTER FORMAT A4 SQL> COLUMN sal HEADING
月薪 JUSTIFY CENTER FORMAT L99999.99 SQL> SELECT ename, sal FROM emp
WHERE deptno = 20 AND sal > 2500; 雇员| 月薪 ====|===================
JONE| ¥2975.00 SCOT| ¥3000.00 T | FORD| ¥3000.00 SQL>COLUMN sal CLEAR
//恢复列的格式 2)限制重复行
在限制重复行的同时,还可以在各个分组之间插入n个空行,其语法为: BREAK ON
break_column SKIP n 跑到新的一页,其语法为: BREAK ON break_column SKIP
PAGE 在每行之后插入n个空行,其语法为: BREAK ON ROW SKIP n
在报表之后插入n个空行,其语法为: BREAK ON REPORT SKIP n SQL> BREAK ON
deptno SKIP 1 SQL> SELECT deptno, ename, sal FROM emp WHERE sal <
2500 2 ORDER BY deptno; DEPTNO ENAME SAL ———- ———-
———- 10 CLARK 2450 MILLER 1300 20 ADAMS 1100 SMITH 800 30 WARD
1250 MARTIN 1250 JAMES 950 TURNER 1500 ALLEN 1600 已选择9行。

当查询中多次用到某一部分时,可以用Oracle
with语句创建一个公共临时表。因为子查询在内存临时表中,避免了重复解析,所以执行效率会提高不少。临时表在一次查询结束自动清除。

oracle 12c安装教程记录如下

首先去官网下载两个架包链接如下:官网链接或者本地下载地址://www.jb51.net/database/568442.html

1. CASE WHEN 表达式有两种形式复制代码
代码如下:–简单Case函数 CASE sex WHEN ‘1’ THEN ‘男’ WHEN ‘2’ THEN ‘女’
ELSE ‘其他’ END –Case搜索函数 CASEWHEN sex = ‘1’ THEN ‘男’ WHEN sex =
‘2’ THEN ‘女’ ELSE ‘其他’ END 2. CASE WHEN 在语句中不同位置的用法2.1
SELECT CASE WHEN 用法
复制代码
代码如下:SELECT grade, COUNT (CASE WHEN sex = 1 THEN 1 /*sex
1为男生,2位女生*/ ELSE NULL END) 男生数, COUNT (CASE WHEN sex = 2 THEN
1 ELSE NULL END) 女生数 FROM students GROUP BY grade;2.2 WHERE CASE
WHEN 用法
复制代码 代码如下:SELECT
T2.*, T1.* FROM T1, T2 WHERE (CASE WHEN T2.COMPARE_TYPE = ‘A’ AND
T1.SOME_TYPE LIKE ‘NOTHING%’ THEN 1 WHEN T2.COMPARE_TYPE != ‘A’ AND
T1.SOME_TYPE NOT LIKE ‘NOTHING%’ THEN 1 ELSE 0 END) = 12.3 GROUP BY
CASE WHEN 用法
复制代码 代码如下:SELECT
CASE WHEN salary <= 500 THEN ‘1’ WHEN salary > 500 AND salary
<= 600 THEN ‘2’ WHEN salary > 600 AND salary <= 800 THEN ‘3’
WHEN salary > 800 AND salary <= 1000 THEN ‘4’ ELSE NULL END
salary_class, — 别名命名COUNT FROM Table_A GROUP BY CASE WHEN salary
<= 500 THEN ‘1’ WHEN salary > 500 AND salary <= 600 THEN ‘2’
WHEN salary > 600 AND salary <= 800 THEN ‘3’ WHEN salary > 800
AND salary <= 1000 THEN ‘4’ ELSE NULL END;
3.关于IF-THEN-ELSE的其他实现3.1 DECODE() 函数复制代码 代码如下:select decode(sex, ‘M’,
‘Male’, ‘F’, ‘Female’, ‘Unknown’)from
employees;貌似只有Oracle提供该函数,而且不支持ANSI SQL,语法上也没CASE
WHEN清晰,个人不推荐使用。3.2 在WHERE中特殊实现复制代码 代码如下:SELECT T2.*, T1.* FROM T1,
T2 WHERE (T2.COMPARE_TYPE = ‘A’ AND T1.SOME_TYPE LIKE ‘NOTHING%’) OR
(T2.COMPARE_TYPE != ‘A’ AND T1.SOME_TYPE NOT LIKE
‘NOTHING%’)这种方法也是在特殊情况下使用,要多注意逻辑,不要弄错。

一般语法格式:

1.数据库的下载www.orcale.com访问官网自行下载。

第一步:将两个架包解压到同一个database目录下。如截图所示:

复制代码 代码如下:with alias_name1 as ,
alias_name2 as , …… alias_nameN as select col1,col2…… col3from
alias_name1,alias_name2……,alias_nameN

2.必须要把两个文件都要下载好,放到同一个目录下进行解压,下解压第一个文件,解压第二个文件的时候要选择替换该文件,因为还有一些新的文件要加入,不然在安装的过程中会发生报错,直接回滚不能安装。

第二步:打开setup应用程序

Oracle with语句的例子:

3.解压后如下使用管理员身份运行setup安装程序

打开后就到了下面这个页面

复制代码 代码如下:WITH Q1 AS (SELECT 3 +
5 S FROM DUAL), Q2 AS (SELECT 3 * 5 M FROM DUAL), Q3 AS (SELECT S, M, S

在这一步时可以不用邮件登录,也可以吧勾勾去掉,会弹出一个警告框,点确定就可以了。。

F:\oracle_base

  • M, S * M FROM Q1, Q2) SELECT * FROM Q3;

注意:对于学习阶段,这一步建议选择仅安装数据库软件

F:\oracle_base\product\12.1.0\dbhome_1

输出结果:复制代码 代码如下:181523120

之前步骤大都是下一步:到这里建议新建一个用户用来操作oracle数据库。

直接点击下一步,直到完成,这里就不一一截图了。

配置两个环境变量(目录最好都用英文,选择一个oracle基目录后,下面的软件位置会有一个默认的路径)

在服务那边可以看到监听器已经配置完成了

ORACLE_BASE=E:\Tools\oracle\oracle_baseORACLE_HOME=E:\Tools\oracle\oracle_base\product\12.1.0\dbhome_1

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

到这一步基本上已经完成安装了,下一步就到创建数据库。

win+r进入命令台,直接输入dbca,进入到如图画面:

注意:1,数据库名称建议使用ORCL(类似Java中驼峰式命名变量,只是一种习惯)

2,数据库字符集应改为utf-8

3,不选择创建容器数据库

最后一步,等待以上步骤完成后还需配置这个环境变量ORACLE_SID=ORCL

每一次新创建一个新的数据库都要不同的sid。

总结:在安装的过程中如果出现问题,请以管理员的身份进行安装。

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图