




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
经典word整理文档,仅参考,双击此处可删除页眉页脚。本资料属于网络整理,如有侵权,请联系删除,谢谢!oracle[next]1.创立表空间neuspace,数据文件命名为neudata.dbf,存放在d:\data目录下,文件大小为200MB,设为自动增长,增量5MB,文件最大为500MB。(8答:createtablespaceneuspacedatafile‘d:\data\neudata.dbf’size200mautoextendonnext5mmaxsize500m;2.假设表空间neuspace已用尽500MB空间,现要求增加一个数据文件,存放在e:\appdata目录下,文件名为appneudata,大小为500MB,不自动增长。(5答:altertablespaceneuspaceadddatafile‘e:\appdata\appneudata.dbf’size500m;3.以系统管理员身份,创立账号tom,设置tom的默认表空间为neuspace。为tom分配connect和resource系统角色,获取根本的系统权限。然后为tom分配对用户scott的表emp的select权限和对SALARY,MGR属性的update权限。(8答:createusertomidentifiedbyjackdefaulttablespaceneuspace;Grantconnect,resourcetotom;Grantselect,update(salary,mgr)onscott.emptotom;4.按如下要求创立表class和student。(15答:createtableclass(classnonumber(2)constraintclassclassnopkprimarykey,amevarchar2(10)notnull);createtablestudent(stunonumber(8)constraintstudentstunopkprimarykey,snamevarchar2(12)notnull,sex2)default‘男’,birthdaydate,emailvarchar2(20)constraintstudentemailukunique,scorenumber(5,2)constraintstudentscoreckcheck(score>=0andscore<=100),classnonumber(2)constraintstudentclassnofkreferencesclass(classno));5.在表student的SNAME属性上创立索引studentsnameidx(5分)答:createindexstudentsnameidxonstudent(sname);6.创立序列stuseq,要求初值为xx0001,增量为1,最大值为xx9999。(6答:createsequencestuseqincrementby1startwithxx0001maxvaluexx9999nocachenocycle;7.向表student中插入如下2行。(5答:intostudentvalues(stuseq.nextval,’tom’,’男’,todate(‘1979-2-314:30:25’,fmhh24:mi:ss’),’tom@163.’,89.50,1);intostudent(stuno,sname,classno)values(stuseq.nextval,’jerry’,2);8.修改表student的数据,将所有一班的学生成绩加10分。(4答:studentsetscore=score+10whereclassno=1;9.删除表student的数据,将所有3班出生日期小于1981年5月12日的记录删除。(4答:fromstudentwhereclassno=3andbirthday>月-81’;10.完成以下SQL语句。(40(1)按班级升序排序,成绩降序排序,查询student表的所有记录。答:select*fromstudentorderbyclassno,scoredesc;(2)查询student表中所有二班的成绩大于85.50分且出生日期大于1982-10-31日的男生的记录。答:select*fromstudentwhereclassno=2andscore>85.50andbirthday<月-82’andsex=’男’;(3)查询student表中所有三班成绩为空的学生记录。答:select*fromstudentwhereclassno=3andscoreisnull;(4)表student与class联合查询,要求查询所有学生的学号,姓名,成绩,班级名称。(使用oracle与SQL99两种格式)答:selects.stuno,s.sname,s.score,c.amefromstudents,classcwheres.classno=c.classno;(5)按班级编号分组统计每个班的人数,最高分,最低分,平均分,并按平均分降序排序。答:selectclassno,count(*),max(score),min(score),avg(score)fromstudentgroupbyclassnoorderbyavg(score)desc;(6)查询一班学生记录中所有成绩高于本班学生平均分的记录。答:select*fromstudentwhereclassno=1andscore>(selectavg(score)fromstudentwhereclassno=1);(7)统计二班学生中所有成绩大于所有班级平均分的人数。答:selectcount(*)fromstudentwhereclassno=2andscore>all(selectavg(socre)fromstudentgroupbyclassno);(8)查询平均分最高的班级编号与分数。答:selectclassno,avg(score)fromstudentgroupbyclassnohavingavg(score)=(selectmax(avg(score))fromstudentgroupbyclassno);(9)查询所有学生记录中成绩前十名的学生的学号、姓名、成绩、班级编号。答:selectstuno,sname,score,classnofrom(select*fromstudentorderbyscoredesc)whererownum<=10;(10)创立视图stuvu,要求视图中包含student表中所有一班学生的stuno,sname,score,classno四个属性,并具有withcheckoption限制。答:createviewstuvuasselectstuno,sname,score,classnofromstudentwhereclassno=1withcheckoption;1、比较大小selectdecode(sign(变量1-变量2),-1,变量1,变量2)fromdual;–取较小值sign()函数根据某个值是0、正数还是负数,分别返回0、1、-1例如:变量1=10,变量2=20那么sign(变量1-变量2)返回-1,decode解码结果为“变量1”,到达了取较小值的目的。2、表、视图构造转化现有一个商品销售表sale,表构造为:month6)sell–月份number(10,2)–月销售金额现有数据为:200001200002200003200004200005200006200007xx0110001100120013001400150016001100xx02xx0112001300想要转化为以下构造的数据:year4)–年份month1month2month3month4month5month6month7month8month9month10month11month12number(10,2)number(10,2)number(10,2)number(10,2)number(10,2)number(10,2)number(10,2)number(10,2)number(10,2)number(10,2)number(10,2)number(10,2)月销售金额月销售金额月销售金额月销售金额月销售金额月销售金额月销售金额月销售金额月销售金额–10月销售金额–11月销售金额–12月销售金额构造转化的SQL语句为:createorreplaceviewvsale(year,month1,month2,month3,month4,month5,month6,month7,month8,month9,month10,month11,month12)asselectsubstrb(month,1,4),sum(decode(substrb(month,5,2),’01′,sell,0)),sum(decode(substrb(month,5,2),’02′,sell,0)),sum(decode(substrb(month,5,2),’03′,sell,0)),sum(decode(substrb(month,5,2),’04′,sell,0)),sum(decode(substrb(month,5,2),’05′,sell,0)),sum(decode(substrb(month,5,2),’06′,sell,0)),sum(decode(substrb(month,5,2),’07′,sell,0)),sum(decode(substrb(month,5,2),’08′,sell,0)),sum(decode(substrb(month,5,2),’09′,sell,0)),sum(decode(substrb(month,5,2),’10′,sell,0)),sum(decode(substrb(month,5,2),’11′,sell,0)),sum(decode(substrb(month,5,2),’12′,sell,0))fromsalegroupbysubstrb(month,1,4);79、CASE语句的用法?Oracle用法很简单:SELECTlastname,jobid,salaryCASEjobidWHEN‘ITPROG’THEN1.10*salaryWHEN‘STCLERK’THEN1.15*salaryWHEN‘SAREP’THEN1.20*salaryELSEsalaryEND“REVISEDSALARY”FROMemployees80、truncate和的区别?1、TRUNCATE在各种表上无论是大的还是小的都非常快。如果有ROLLBACK命令DELETE将被撤销,而TRUNCATE那么不会被撤销。2、TRUNCATE是一个DDL语言而DELETE是DML语句,向其他所有的DDL语言一样,他将被隐式提交,不能对TRUNCATE使用ROLLBACK命令。3、TRUNCATE将重新设置高水平线和所有的索引。在对整个表和索引进展完全浏览时,经过TRUNCATE操作后的表比DELETE操作后的表要快得多。4、TRUNCATE不能触发触发器,DELETE会触发触发器。5、不能授予任何人清空他人的表的权限。6、当表被清空后表和表的索引讲重新设置成初始大小,而那么不能。7、不能清空父表。81、表空间如何扩展?并用语句写出?两种扩展方式:a)增加数据文件altertablespacetablespacenameadddatafile‘’xxMBb)扩展数据文件大小alterdatabasedatafile‘’resizenewMB82、表空间区管理方式?哪种方式现在是推荐使用的?a)字典管理方式extentmanagementb)本地管理方式extentmanagementlocal[autoallocate/uniformxxmb];83、用什么函数获得日期?和日期中的月,日,年tosysdate,’year’):towthsoundsixtosysdate,’yyyy’):xxtosysdate,’month’):8月tosysdate,’mm’):08tosysdate,’day’):星期4tosysdate,’dd’):2284、分区表的应用?a)一个分区表有一个或多个分区,每个分区通过使用范围分区、散列分区、或组合分区分区的行b)分区表中的每一个分区为一个段,可各自位于不同的表空间中c)对于同时能够使用几个进程进展查询或操作的大型表分区非常有用85、谈谈索引的用法及原理?索引是假设干数据行的关键字的列表,查询数据时,通过索引中的关键字可以快速定位到要访问的记录所在的数据块,从而大大减少读取数据块的I/O次数,因此可以显著提高性能。86、存储过程的应用,如何既有输入又有输出?Createprocedureproname(xxxxin/outtype;yyyyin/out/inouttype;)is/aszzzztype;beginsqlpro;exceptionexceptionxxxxx;mit;end;87、常发生的异常有哪些?常用预定义例外CURSORALREADYOPEN—ORA-06511SQLCODE=-6511游标已经翻开DUPVALONINDEX—ORA-00001SQLCODE=-1违反唯一性约束INVALIDCURSOR—ORA-01001SQLCODE=-1001非法游标操作INVALIDNUMBER—ORA-01722SQLCODE=-1722字符向数字转换失败LOGINDENIED—ORA-01017SQLCODE=-1017NODATAFOUND—ORA-01403SQLCODE=+100没有找到数据NOTLOGGEDON—ORA-01012SQLCODE=-1012没有连接到数据库PROGRAMERROR—ORA-06501SQLCODE=-6501内部错误STORAGEERROR—ORA-06500SQLCODE=-6500TIMEOUTONRESOURCE—ORA-00051SQLCODE=-51TOOMANYROWS—ORA-01422SQLCODE=-1422返回多行TRANSACTIONBACKEDOUT—
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 工程预算图文讲解课件
- 工程讲课课件
- 工程讲义课件
- 二零二五年度防爆电气设备研发成果转化与产业化合同
- 重庆市开县三校2026届中考试题猜想语文试卷含解析
- 小明的爸爸爱打鸟800字15篇
- 集体房产证房屋买卖合同
- 疫情停课家长会课件图片
- 品牌特许加盟合同书
- 合作发展农田经营合同
- GB/T 21099.5-2024企业系统中的设备和集成过程控制用功能块(FB)和电子设备描述语言(EDDL)第5部分:EDDL内置库
- UL2251标准中文版-2017电动汽车的插头插座和耦合器UL中文版标准
- 蓝色医疗肝硬化腹水病人的护理
- 学校教师教学工作手册
- 2025届高考语文复习:二元思辨类作文写作指导+课件
- 2024秋期国家开放大学本科《合同法》一平台在线形考(任务1至4)试题及答案
- 炒股基础知识-股票入门
- 青绿色中国农业科学院考研复试模板
- 主播终止合同告知函
- 2025届山东省淄博市高青县第一中学高一数学第二学期期末经典试题含解析
- 江苏省农村集体资产管理办法
评论
0/150
提交评论