ORACLE数据库开发笔记.docx

上传人:飞****2 文档编号:51840088 上传时间:2022-10-20 格式:DOCX 页数:6 大小:15.72KB
返回 下载 相关 举报
ORACLE数据库开发笔记.docx_第1页
第1页 / 共6页
ORACLE数据库开发笔记.docx_第2页
第2页 / 共6页
点击查看更多>>
资源描述

《ORACLE数据库开发笔记.docx》由会员分享,可在线阅读,更多相关《ORACLE数据库开发笔记.docx(6页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、第十章:使用视图(整理笔记)主要内容:1.创建视图;2.更改、重命名和撤消视图3.使用视图修改数据4.使用内联视图。5.使用Top-N方法。视图是从一个或多个表中导出的行或列的子集。视图本身不包含数据,它只起到一个窗口的作用,由此可以观看或修改基表的数据。数据字典把视图作为一条select语句加以保存。视图优点:1.视图可用来检索表中所选的列。(防止数据丢失)2.可创建简单的查询,检索需要频繁调看的结果。3.可用来从多个表中检索数据。4.不需要时可以删除,不影响数据库。/1创建视图注意事项:1.包含连接、组合和子查询的select语句可被包含在定义视图的子查询内。2.创建视图时不能使用orde

2、rby子句,但为检索视图中数据,可用这条语句。3.or replace选项用于修改视图定义,而无需撤消或重新创建它。/1.1创建简单视图create view empas select vfirstname,vlastnamefrom employee;create view v_addressasselect vfirstname,vlastname,cphone,vemailid,ntestscore from externalcandidate;select * from v_addresswhere vlastname=Jones;create view v_scoreasselect

3、 vfirstname,ntestscore from externalcandidate where ntestscore=60;/force强制创建视图create force view v_test asselect * from t_test;/or replace 创建或替代视图create or replace view v_countryasselect vfirstname,ccountryfrom externalcandidate natural join country;/1.2创建复杂视图create view emp_dept_vuas select vfirstna

4、me,vlastname,vdepartmentname from employeejoin department on employee.cdepartmentcode=department.cdepartmentcode;/2更改、重命名和撤消视图/2.1更改视图create or replace view emp_dept_vuas select vfirstname,vlastname,vdepartmentname,cCurrentPosition from employeejoin department on employee.cdepartmentcode=department.

5、cdepartmentcode;/2.2重命名视图rename emp_dept_vu to empdeptvu;/2.3撤消视图drop view empdeptvu;select * from emp_dept_vu;/3使用视图修改数据/不能同时修改两个表里面的数据,如果修改必须在两个表里面分别修改update emp_dept_vuset vfirstname=Hellowhere vlastname=Smith;/4使用内联视图:它是SQL语句的子查询,在主查询的from子句使用它吧,通过别名被引用它。、select e.vfirstname,e.nrating,e.cpositio

6、ncode,m.maxratefrom externalcandidate e,(select cpositioncode,max(nrating) maxratefrom externalcandidate group by cpositioncode) mwhere e.cpositioncode=m.cpositioncode and e.nratingm.maxrate;select *from (select vfirstname,ntestscore from externalcandidate);/5使用Top-N分析法/rownum是伪列,本来没有,加上的。select row

7、num, vfirstname from externalcandidate;select vfirstname,ntestscore from externalcandidate order by ntestscore desc;/同上比较,rownum能精确的查询到前几位,rownum只能是小于等于某个数。它往往用于分页查询/查询前三行select rownum vfirstname,ntestscorefrom (select vfirstname,ntestscore from externalcandidate order by ntestscore desc)where rownu

8、m=3;/分页查询/查询6到10行select * from(select rownum r, vfirstname,ntestscorefrom (select vfirstname,ntestscore from externalcandidate order by ntestscore desc)where r between 6 and 10;第十一章:使用其他数据库对象(整理笔记)主要内容:(序列是重点,索引了解概念,同义词知道就行)1.创建序列。2.管理索引。3.管理同义词。/1.1创建序列,常常以seq为前缀注意事项:1.如果序列用于生成主键值,不要使用CYCLE选项;2.按用途

9、命名序列;3.按递减顺序创建序列时,可以对INCREMENT BY子句指定一个负数值;create sequence seq_studentincrement by 1start with 1;create sequence seq_empidincrement by 1start with 1maxvalue 100nominvaluenocyclenocache;create sequence seq_studentincrement by 3start with 9maxvalue 20minvalue -3;/1.2用insert语句插入insert into studentvalue

10、s (seq_student.nextval,25);/1.3查询序列select seq_student.nextval from dual;select seq_student.currval from dual;/1.4更改序列注意事项:1.只有序列属主或有alter权限的用户才能修改序列;2.不能使用alter sequence 语句更改现有的序列整数,start with选项里的值;alter sequence seq_studentmaxvalue 1000;/1.5撤消序列drop sequence seq_student;/2管理索引使用索引的优点:2.1查询执行快;2.2实施

11、数据的唯一性;2.3多表检索数据的过程快;创建索引的规则:1.取值范围很大的列;2.有很多空值的列;3.在where子句或联接里使用的列;4.预期查询返回的行数小于表的总行数的2%。索引类型:唯一索引:带primary key 或 unique key约束时,Oracle系统自动创建唯一索引。非唯一索引:人为手工创建。/2.1创建索引create index studenton employee(vfirstname);select vfirstname from employee;/2.2撤消索引drop index student;create user test1identified b

12、y abc123default tablespace users;grant create session to test;grant create table to test;grant unlimited tablespace to test;grant create session,create table,unlimited tablespaceto test;grant select on user1.employeeto test;grant update on user1.employeeto test;select * from user1.employee;/修改用户密码:a

13、lter user testidentified by xyz456;/收回权限revoke updateon user1.employeefrom test;第十二章:管理用户访问(整理笔记)主要内容:1.创建用户2.给用户管理权限3.撤消用户4.废除用户访问权限5.创建角色P12.11练习题create user Jimidentified by manager;grant create session to Jim;/授予连接权限(有此语句才可用通过用户名和密码来连接数据库)/修改用户密码(方法一)alter user Jimidentified by hello;/此时,密码不再是ma

14、nager而是hello/修改用户密码(方法二)在OracleSQL*plus窗口的SQL提示符后输入Password来修改密码。/1.创建用户和密码create user Helloidentified by hello;/2.给用户授予系统权限grant create session,create table,create view,create sequenceto Hello;/2.针对某一个表或视图给用户授予对象权限grant select,alter,delete,index,inserton user1.employeeto Hello;/3.撤消用户:cascade是完全删除用

15、户,加上他之后,可以连带用户创建的对象一同删掉drop user Hello cascade;/4.废除用户访问:此处create session权限是通过with admin option被授予的。revoke create sessionfrom Hello;/5.能授予用户的有名的权限组合称为角色,角色可以是权限的组合,也可以是权限的组合。CONNECT Role :分配给临时用户的角色;RESOURCE Role:这个角色分配给常规用户;DBA Role:这个角色拥有一切系统权限,包括不加限制的表空间配额。/5.1CREATE ROLE 语句适用于创建角色,创建角色时可以加密码也可以不加。create role hello;或 create role hello identified hello;/5.2ALTER ROLE语句可用来为角色分配密码。alter role hello identified world;/5.3使用grant语句为角色授予权限。grant create sessionto hello;alter user hello default role hello;set role hello;/set role none 语句可以用来冻结一个用户set role none;/5.4撤消角色drop role hello;

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 教案示例

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁