问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

ORACLE 7

发布网友 发布时间:2022-05-01 00:30

我来回答

3个回答

懂视网 时间:2022-05-01 04:51

************************************************************************************ 关联表的约束: 强制删除关联表中的父表: drop table tab_name cascade constraint ; 约束本身是可以修改的,但是不建议修改约束 知识点: 1,掌握视图的作用及定义 2,掌握序列的使用:SEQUENCE 3,掌握PowerDesigner设计工具的使用 4,了解同义词,了解用户管理,了解嵌套表及可变数组 5,理解数据库的设计范式 -------------------------------------------------------- 1,视图: 封装了一条复杂的查询语句 语法: create view view_name as 子查询 {with check option | with read only } ; //不能更新视图的创建条件,不能更改视图数据 建立一个视图,此视图包含了全部部门20的信息: create view view_emp20 as select empno,ename, job,hiredate from emp where deptno=20 ; 查询视图: sele * from view_emp20 ; 删除视图: drop view view_name ; ex: drop view view_emp20 ; 完整语法格式: create or replace view view_name as 子查询 //系统会为用户自动进行删除及重建的功能 ex: create or replace view view_emp20 as select d.dname, count(e.empno), avg(e.sal), avg(months_between(sysdate,e.hiredate)/12) years from emp e, dept d where e.deptno=d.deptno group by d.dname ; 更新视图: 修改视图中7369的部门编号: update view_emp20 set deptno=30 where empno=7369; //提示更新成功,但是视图表中无编号7369的雇员 -------------------------------------------------------- 序列(重点) 在oracle完成自动序列增长的功能,则只能依靠序列完成 格式: create sequence seq_name [increment by n] [start with n] [{maxvalue n |nomaxvalue}] [{minvalue n | nominvalue }] [{cycle | nocycle}] [{cache n | nocache }]; 删除: drop sequence seq_name ex:创建一个myseq的序列,验证自动增长的操作: create sequence myseq increment by 2; 在序列中提供两种操作: nextVal:取得序列的下一个内容 currVal:取得序列的当前内容 创建表test_seq: create table test_seq( curr number, next number ); 使用序列: insert into test_seq(curr,next) values(myseq.currval,myseq.nextVal) ; -------------------------------------------------------- 同义词(了解): 功能:可以让其他用户通过一个名称方便的访问‘user.table_name’. 语法: create synonym syn_name for user.tab_name ; //建立 drop synonym syn_name ; //删除 ex: create synonym dual for sys.dual ; ------------------------------------------ select sysdate from dual ;//dual是张虚拟表 conn sys/change_on_install as sysdba ; select * from tab where TNAME=‘DUAL‘;//在sys用户下存在此表 -------------------------------------------------------- 用户管理(了解): 语法: create user user_name identified by passwd //创建用户(sys用户权限) [default tablespace default_tablespace] [temporary tablespace temporary_tablespace ] grant 权限1,权限2,权限3.. to user ;//给用户授权 create session alter user user_name identified by passwd_new ; //修改用户密码 eg: create user kevin identified by root ; grant conncet, resource to kevin ; 角色:connect 、resource //每个角色有好多不同的权限 解/锁住用户: alter user user_name account lock /unlock; eg: alter user kevin account lock /unlock ; 授权emp表: grant 权限1,权限2 on user_name.tabl_name to user_name ; 将scott用户下的emp表的查询权限及删除权限给kevin: grant select ,delete on scott.emp to kevin; 回收权限: revoke 权限1,权限2,.. on user.tab_name from user_name ; eg: revoke select ,delete on scott.emp from kevin ; grant/(revoke) 权限1,权限2,权限3 on user.tab_name to / (from) user_name ; -------------------------------------------------------- 数据库的备份与恢复(了解): 数据库备份: exp D:data>exp 数据库恢复: imp D:data>impf 查看错误:show error -------------------------------------------------------- 嵌套表(了解): 在一个表中包含另外一个子表 //创建project_ty类型 create type project_ty as object( proid number(4), proname varchar(50), prodate date ) ; / //最后一个‘/‘ 不可少 //使用porject_nt类型 create type project_nt as table of project_ty; / //最后一个‘/‘ 不可少 create table department( deptno number(2) primary key not null, dname varchar2(50) not null, projects project_nt ) nested table projects store as project_nt_tab_temp ; 对于插入数据来讲,需要指定每个project_ty的数据类型 insert into department(deptno,dname,projects) values( 1,‘技术部‘, project_nt( project_ty(1001,‘erp‘,sysdate), project_ty(1002,‘crm‘,sysdate), project_ty(1003,‘oa‘,sysdate), ) ); 查询: select * from department ; 若此时需要查看一个部门的全部项目的话,则需要查询嵌套表: select * from table( select projects from department where deptno=1 ) ; 更新: update table (select projects from department where deptno=1 ) pro set values(pro )=project_ty(‘1001‘,‘测试项目‘,to_date(‘2016-02-12‘,‘yyyy-mm-dd‘)) where pro.proid=1001 ; -------------------------------------------------------- 可变数组(了解): 属于嵌套表的升级版,在可变数组中手机上就是将内部的嵌套表的内容的长度进行了限制。 //定义类型 create type worker_info as object( id number, name varchar2(50), sex varchar2(6) ); / //定义数组类型 create type worker_info_list as varray(10) of worker_info ; / //创建可变数组表 create table department( deptno number(2) primary key not null, dname varchar2(50) not null, workers worker_info_list ); //插入数据 insert into department(deptno,dname,workers) values( 20,‘后勤部‘, worker_info_list( worker_info(1,‘dustin‘,‘F‘), worker_info(2,‘kevin‘,‘F‘), worker_info(3,‘allen‘,‘M‘) ) ); -------------------------------------------------------- 数据库设计范式(了解): 1.第一范式(确保每列保持原子性) 2.第二范式(确保表中的每列都和主键相关) 3.第三范式(确保每列都和主键列直接相关,而不是间接相关) -------------------------------------------------------- 数据库设计工具(重点): powerDesigner工具的使用

 

Oracle学习系列7

标签:

热心网友 时间:2022-05-01 01:59

现在的公司里都是用oracle 9i或者oracle 10g。
oracle的最新版本是今年7月份发布的oracle 11g
你如果要学的话建议你学点新的比如,oracle10g oracle 11g,因为最近几年不会过期。

热心网友 时间:2022-05-01 03:17

现在常用的8i,9i,10g
版本没什么,关键基础要学好,sql语句,以及数据库的各方面知识,不是那么简单的,可以上网找个教程之类的东西看看
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
动感地带中的M值怎么用? 怎样查询动感地带的M值? ...去北京朝阳区姚家园路石佛营东里甲1#上东国际酒店怎么走 北京朝阳公园附近有一个上东国际酒店,在团结湖地铁站的哪一个出口出去... 北京上东国际大酒店是几星酒店 北京上东国际酒店酒店简介 显示器突然黑屏.换另一台显示器它却能显示得到.不知道是什么原因... 电脑选择扩展屏幕,外接屏幕黑屏,选择复制屏幕则正常,改... 我刚配的电脑会黑屏,把显示器跟别人换用后两台都没事 我一开始有2600多幸运币,我昨天上的时候只变成200了,是怎么回事那? 小孩可以喝黄芪水吗 如何用旧裤子改造成整理袋 黄芪水的作用 想买整理袋,不知道哪里有卖啊?超市的太贵了 什么是黄芪水 整理袋用起来咋样? 我想把换季的衣服用大的整理袋寄回老家,哪个快递比较便宜些,大概多少钱,或者一斤多少钱?是快递便宜还 收纳整理袋什么牌子的好 22升整理袋是多大 哪有卖整理袋的? 请教各位,如何得到一个PYTHON变量的字节大小 python为啥有时候用.content爬取的图片是0 kb? python生成的文件大吗 python如何获得响应包的大小 中国移动宽带(吉比特无源光钎接入用户端设备),WIFI密码如何修改? python如何读取文件大小 电脑怎么进入吉比特无源光纤接入用户端设备(GPON)WiFi设置 页面 吉比特pt939g宽带设置参数 吉比特重置后登录无宽带账户密码设置界面? 吉比特的宽带密码怎么查询 收纳袋一般在哪里可以买到 ?? 说说黄芪泡水喝,对身体有什么好处吗? 真空收纳袋从哪儿质量好,价格又便宜? 初三的男生怎么让自己全身变白啊? 汽车怎么买保险? 男士皮肤美白有什么方法 哪位大神知道南京有哪些公司做三维动画,或者影视动画,三维广告,游戏动画之类的公司也行,我想求职 如何选择专业的三维动画制作公司 北京壹码视界数码科技有限公司的北京壹码视界三维动画制作公司简介 产品三维广告 oracle优化7(如何干预执行计划 自学中医从哪里学起 日记一篇600字写什么的都行 写一篇日记我做了一个恐怖的梦600字 第一次烧饭,写一篇600字的体验日记。 以《___笑了》为题写一篇日记,600字 急!!!初一日记: 以‘中秋月圆时’为题写一篇600字日记 感受,写一篇日记,600字些什么之最小集,600字 请写一篇军训日记,600字 不要复制的,发到邮箱 谢谢 写一篇不少于600字的作文