
Oracle数据库学习笔记
码艺丫嘿
交流代码心得,帮助开发同学!
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Oracle 环境安装
一、Oracle 环境的安装(1) 安装版本:11g 取得Oracle 11g安装程序,或从Oracle技术网下载光盘映像。在评估阶段您可以免费下载和使用无技术限制的全功能Oracle,但在正式的商业场合应用时需要购买法律授权。 下载地址: http://www.oracle.com 需要约1.5GB 磁盘空间用于下载及解压缩,并需要2.5GB以上的磁盘空间用于安装。(2)安装...原创 2018-07-30 12:58:00 · 353 阅读 · 0 评论 -
第十章层次查询课堂笔记和练习
– 层次查询 – 遍历树从底向上1.查询雇员编号为7876的员工信息,以及从底向上的上级经理信息。 select * from emp where empno = 7876 union select * from emp where empno = 7788 union select * from emp where empno = ...原创 2018-08-01 19:48:54 · 303 阅读 · 0 评论 -
第十章层次查询课后练习和作业
– 课后作业-- 1.产生一个报告显示 BLAKE的所有下级(包括直接和间接下级)雇员的名字、薪水和部门号。 select ename 雇员名字,sal 薪水,deptno 部门号 from emp start with ename = 'BLAKE' connect by prior empno = mgr; -- 2.创建一个报告显示对于雇员 ...原创 2018-08-01 19:50:42 · 702 阅读 · 0 评论 -
第十一章数据操作与事务控制课堂笔记和练习
– 数据操作语言:DML(Data Manipulation Language) :insert update delete插入数据 insert – 语法:insert into 表名(列名1,[列名2….]) values(值1,[值2…..]) – 注意: – 列名列表与值列表个数、数据类型保持一致 ...原创 2018-08-02 12:49:01 · 446 阅读 · 0 评论 -
第十一章数据操作与事务控制课后练习和作业
– 练习练习一-- 1.向部门表新增一个部门,部门编号为50,部门名称为HR,工作地点为SY。 insert into dept values(50,'HR','SY'); select * from dept;-- 2.向部门表新增一个部门,部门编号为60,部门名称为MARKET。 insert into dept values(60,'MARKET'...原创 2018-08-02 14:36:30 · 4271 阅读 · 0 评论 -
第十三章创建和维护表课堂笔记和练习
– 创建表和维护表Oracle中数据库对象命名原则– 必须由字母开始,长度在 1–30个字符之间。– 名字中只能包含 A–Z, a–z, 0–9, _ (下划线),$ 和 #。– 同一个Oracle服务器用户所拥有的对象名字不能重复。– 名字不能为Oracle的保留字。– 名字是大小写不敏感数据定义语言: (Data Definition Language,DDL) :...原创 2018-08-02 17:04:18 · 401 阅读 · 0 评论 -
第十三章创建和维护表课后练习和作业
– 练习练习1-- 1.学校想做一个选课系统,其中涉及到课程表,学生表,-- 请分别创建这两个表,自己思考表中应有的列及数据类型。-- 课程表 create table course( cid number(4), --课程编号 cname varchar(50),--课程姓名 ctypeID number(4), --课程类型 ...原创 2018-08-02 17:47:01 · 2855 阅读 · 0 评论 -
第十四章约束课堂笔记和练习
– 约束:not null、unique、primary key、foreign key、checknot null(非空约束) – 1.只能定义列级别的约束 – 2.值不可以为空(不允许null 与 ”)-- 定义没有约束名称的not null-- 1.创建emp备份表,且约束雇员姓名与部门编号不能为空 create table emp_copy ( ...原创 2018-08-02 18:32:10 · 307 阅读 · 0 评论 -
第十四章约束课后练习和作业
– 练习练习一-- 1.学校有一个选课系统,其中包括如下关系模式:-- 系(系编号: 主键,-- 系名称: 唯一键,-- 系主任: 非空约束,-- 系所在校去:取值范围只能在南湖校区和浑南校区) create table college ( collegeno number(4) constr...原创 2018-08-02 18:45:43 · 2282 阅读 · 3 评论 -
第十五章视图课堂笔记和练习
– 视图 – 概念: – 限制其它用户对数据库表的访问,因为视图可以有选择性的显示数据库表的一部分; – 容易实现复杂的查询; – 对于相同的数据可以产生不同的视图;-- 简单视图 一个 没有 没有 可以...原创 2018-08-02 19:00:40 · 374 阅读 · 0 评论 -
第十五章视图课后练习和作业
– 练习练习一 -- 1.创建一个视图,通过该视图可以查询到工资在2000-5000内并且姓名中 -> 包含有A的员工编号,姓名,工资。 create view sal2_5 as select empno 员工编号,ename 姓名,sal 工资 from emp where sal between...原创 2018-08-02 19:05:05 · 4271 阅读 · 0 评论 -
第十六章序列、索引、同义词课堂笔记和练习
– 序列:通常用来生成主键值,可以自增或自减创建序列-- 简单创建 create sequence emp_seq;-- 复杂创建-- 指定所有属性值创建 create sequence emp_seq start with 1 --从1开始取值 increment by 1 --每次增加1 ...原创 2018-08-02 19:14:42 · 313 阅读 · 0 评论 -
第十六章序列、索引、同义词课后练习和作业
– 练习 – 练习一 – 1.创建一个序列,该序列起始值从1开始,无最大值,增量是1,不循环。 create sequence dept_seq start with 1 increment by 1 nocycle; drop seque...原创 2018-08-02 22:09:01 · 1400 阅读 · 0 评论 -
第十七章用户、权限和角色课堂笔记和练习
– 用户– 用户是数据库的使用者。 – 用户一般是由DBA来创建和维护的,创建用户后,用户不可以执行任何Oracle操作(包括建立会话), – 只有赋予用户相关的权限,用户才能执行权限允许范围内的操作。-- sys管理员 创建用户 create user user1 identified by admin;-- sys授权 create sess...原创 2018-08-03 07:55:44 · 427 阅读 · 0 评论 -
第十七章用户、权限和角色课后练习和作业
– 练习练习1-- 1.自己尝试创建一个用户user1 -- 创建用户也要在sys 管理员用户下操作 create user user1 identified by admin;-- 2.使用管理员账户为用户user1分配create session和create table的权限 -- 换为sys dba权限登录 grant create ...原创 2018-08-03 07:56:15 · 708 阅读 · 0 评论 -
第九章高级子查询课后练习和作业
– 练习练习一-- 1.查询比所在职位平均工资高的员工姓名,职位。 -- 相关子查询: select ename 员工姓名, job 职位 from emp outer where sal > (select avg(sal) from emp where job = outer.job); -- 子查询在from子句中使用 select e...原创 2018-08-01 19:30:05 · 1524 阅读 · 0 评论 -
第九章高级子查询课堂笔记和练习
– 高级子查询嵌套子查询 – 在通常的子查询中,子查询是以嵌套的方式写在父查询的WHERE、HAVING、FROM子句中,所以被 称为嵌套子查询。 注意:嵌套子查询可以单独运行 – 嵌套子查询的执行过程: – 1.子查询首先执行一次; – 2.用来自子查询的值确认或取消父查询的候选行。查询比本部门平均薪水高的员工姓名,薪水 select emp...原创 2018-08-01 19:27:14 · 404 阅读 · 0 评论 -
第八章集合运算课后练习和作业
– 练习练习一 -- 1.分别使用联合运算及完全联合运算完成,按照时间升序顺序,查询员工7839的 -> 工作岗位列表。 -- union联合运算 select job 工作岗位列表, hiredate from emp where empno = 7839 union select job, begindate fro...原创 2018-08-01 18:37:39 · 1165 阅读 · 0 评论 -
Oracle 数据库登录、用户解锁、改密码、创建用户授权操作
一、Oracle 环境的安装(1)安装版本:11g 取得Oracle 11g安装程序,或从Oracle技术网下载光盘映像。在评估阶段您可以免费下载和使用无技术限制的全功能Oracle,但在正式的商业场合应用时需要购买法律授权。 下载地址: http://www.oracle.com 需要约1.5GB 磁盘空间用于下载及解压缩,并需要2.5GB以上的磁盘空间用于安装。...原创 2018-07-30 13:28:21 · 4367 阅读 · 0 评论 -
第二章简单查询课堂笔记和练习(基于用户scott的表数据,往后操作皆是基于此用户的表数据)
select语句的基本语法 SELECT [DISTINCT]{*|column|expression [alias],...}(表示所需检索的数据列) FROM table;(表示检索的数据来自哪个表)个人喜欢用小写写关键字,标准的还是用大写的,建议大家不要像我一样– 选择列 就像一个班里有很多学生,学生有自己的组,而列名就相当于学生的组名-- ...原创 2018-07-30 19:07:45 · 437 阅读 · 0 评论 -
第二章简单查询练习和课后作业
此练习以及课后作业均为个人所学课件中的题目,目的在于方便自己查看记忆,不做它用– 练习一-- 1.使用两种方式查询所有员工(emp)信息 select * from emp;(效率较低) select empno, ename, job, mgr, hiredate, sal, comm, deptno from emp;(效率较高)-- 2.查询(EMP)员工编...原创 2018-07-30 19:20:07 · 1447 阅读 · 0 评论 -
第三章限制数据和对数据排序课堂笔记和练习
– 使用where语句比较数值型值 数值型数据比较时可不加单引号-- 1、查询所有部门编号为10的员工信息 select * from emp where deptno = 10;-- 2、查询所有部门编号不在10的员工信息 select * from emp where deptno <&...原创 2018-07-30 19:47:52 · 358 阅读 · 0 评论 -
第三章限制数据和排序练习和课后作业
– 练习一-- 1.查询职位为SALESMAN的员工编号、职位、入职日期。 select empno 员工编号, job 职位, hiredate 入职日期 from emp where job = 'SALESMAN';-- 2.查询1985年12月31日之前入职的员工姓名及入职日期。 select ename 员工姓名, hiredate 入...原创 2018-07-30 21:16:15 · 880 阅读 · 0 评论 -
第四章单行函数课堂笔记和练习
– 字符函数大小写转换-- lower() 将所有字母转小写 select lower(ename) from emp; select ename from emp where lower(ename) like '%s%';-- 虚表 dual(可以拿来显示一些表中不存在的数据,一般用于测试用表) select lower('KJLAF') from ...原创 2018-07-30 22:01:34 · 335 阅读 · 0 评论 -
第四章单行函数练习和课后作业
– 练习一-- 1.写一个查询,用首字母大写,其它字母小写显示雇员的 ename,显示名字的长度,并给每列一个适当的标签,-- 条件是满足所有雇员名字的开始字母是J、A 或 M 的雇员,并对查询结果按雇员的ename升序排序。(提示:使用initcap、length、substr)select initcap(ename) 首字母大写姓名, length(ename) 名字的长度 ...原创 2018-07-30 22:04:01 · 2434 阅读 · 0 评论 -
第五章多表连接课堂笔记和练习
– 多表连接oracle自有写法:等值连接、非等值连接、外部连接、自身连接 -- 笛卡尔积:连接条件被省略 或 连接条件无效 select * from emp,dept;-- 该查询行数为:emp行数*dept行数 -- 等值连接:多个表有共同的列 注意: n张表关联,必须有n-1个连接条件,否则产生笛卡尔积 ...原创 2018-07-31 19:47:01 · 401 阅读 · 0 评论 -
第五章多表连接练习和课后作业
– 练习练习一-- 1.写一个查询,显示所有员工姓名,部门编号,部门名称。 select e.ename 员工姓名, e.deptno 部门编号, d.dname 部门名称 from emp e, dept d where e.deptno = d.deptno;-- 2.写一个查询,显示所有工作在CHICAGO并且奖金不为空的员工姓名,-- ...原创 2018-07-31 22:54:57 · 1566 阅读 · 0 评论 -
第六章分组函数课堂笔记和练习
– 分组函数常用的五个分组函数-- min()最小值,max()最大值,所有类型 select min(hiredate), max(hiredate) from emp; select min(sal), max(sal) from emp;-- sum()总和,avg()平均值-- SUM和AVG函数都是只能够对数值类型的列或表达式操作 sel...原创 2018-08-01 09:00:13 · 330 阅读 · 0 评论 -
第六章分组函数课后练习和作业
– 练习练习一-- 1.查询部门20的员工,每个月的工资总和及平均工资。 select sum(sal) 每个月工资总和, avg(nvl(sal,0)) 平均工资 from emp where deptno = 20; -- 2.查询工作在CHICAGO的员工人数,最高工资及最低工资。 select count(*) 员工人数, ...原创 2018-08-01 10:08:47 · 905 阅读 · 0 评论 -
第七章子查询课堂笔记和练习
– 子查询 1.子查询(内部查询)优先于主查询(外部查询)执行 2.子查询的结果被主查询使用 – 单行子查询 -- 查询出比JONES工资高的其他雇员 select ename from emp where sal > (select sal from emp where ename = 'JONES');– 注意:查...原创 2018-08-01 13:24:03 · 489 阅读 · 0 评论 -
第七章子查询课后练习和作业
– 练习练习一-- 1.查询入职日期最早的员工姓名,入职日期 select ename 员工姓名, hiredate 入职日期 from emp where hiredate = (select min(hiredate) from emp);-- 2.查询工资比SMITH工资高并且工作地点在CHICAGO的员工姓名,工资,部门名称 sel...原创 2018-08-01 18:13:46 · 7557 阅读 · 0 评论 -
第八章集合运算课堂笔记和练习
– 集合运算 所有的集合运算符与等号的优先级相同,如果 SQL 语句包含多个集合运算符并且没有圆括号明确地指定另一个顺序,Oracle 服务器将以从左到右的顺序计算。准备工作此项操作为练习而作,可先不管直接执行 -- 1.创建员工历史岗位表 emp_jobhistory: create table emp_jobhistory( id number,-...原创 2018-08-01 18:32:19 · 428 阅读 · 0 评论 -
第四章数组
一维数组: 特点: 1.指定一种数据类型 2.指定长度 声明: 数组类型 数组名称[]; 数组类型[] 数组名称; 创建: 数组名称 = new ...原创 2018-10-13 09:09:50 · 198 阅读 · 0 评论