1、数据库系统实验报告四学号姓名实验时间2014-12-3实验名称数据库模式管理实验学时4准备材料1. SQL Plus命令手册2. Oracle数据字典3. Oracle中的数据类型扩展实验1. 掌握在企业管理器中进行表的创建和管理的方法。2. 利用企业管理器观察数据库的物理模式。(此部分内容不要求在实验室完成,不用写入实验报告。)实验环境Oracle 9i(及以上版本)服务器SQL Plus/ SQL Plus work sheet客户端实验目的1掌握使用SQL语句进行表的创建和管理的方法2加深对关系数据库结构和数据完整性等概念的理解实验内容及步骤1. 创建书上university数据库中所有
2、的表,并使用命令观察用户所有表的表名、观察每张表的结构及每张表上的约束信息。select * from user_tables;desc SECTION;select * from user_constraints where table_name = SECTION;2. 修改表结构(1) 在instructor表中增加列存储教师家庭地址,其地址包括省、市、区、街道、门牌号等列,列的数据类型自己给出,列允许为空。alter table instructor add (province varchar(30),city varchar(30),street varchar(30),house_
3、number varchar(30);(2) .对student表中的姓名字段长度都改为10,设置是否成功?原因是什么?将该字段长度改为50,能否成功?说明原因。alter table student modify name varchar(10);修改成功alter table student modify name varchar(50);修改成功只要修改的长度若大于已存在的字符的最大长度都行(3) 为student表中tot_cred列设置默认值 0,插入一个新学生,且不给其tot_cred列赋值,观察结果。alter table student modify tot_cred defa
4、ult 0;insert into student (ID,NAME,DEPT_NAME) values(110,zhuanghan,Finance);select ID,NAME,DEPT_NAME from student;(4) student表中tot_cred列是对总学分的统计,现在数据库中没有记录哪些学生已选修课程学分已累加,哪些课程的学分还没有累加。设计一种方案记录已累加课程,防止出现重复累加的情况。或者设计一种方案简化总学分的计算过程。方案:对takes表增加多一个字段isComputed作为标记,已经被累加的则这个字段为1,没有被累加的为零,统计时就只需要找到takes上is
5、Computed为0的数据进行累加(5) 删除takes表上对student表ID的外键约束,再添加takes表是对student表ID 的外键 约束 ,观察并解释实验结果。添加一个不存在的学生选修CS001课程的信息,并给他一个成绩。再添加takes表是对student表ID 的外键 约束 ,观察并解释实验结果。ALTER TABLE TAKES DROP CONSTRAINT SYS_C0054665;ALTER TABLE TAKES ADD CONSTRAINT SYS_C0054665 FOREIGN KEY(id) REFERENCES STUDENT(id);insert int
6、o takes values (1111,CS-001,1,Spring,2013,A);ALTER TABLE TAKES ADD CONSTRAINT SYS_C0054665 FOREIGN KEY(id) REFERENCES STUDENT(id); (6) 设置takes表ID, course_id,sec_id三个字段非空,是否能设置成功,对插入数据有没有影响? 删除takes表主键约束,增加某同学选同一门课程(id, couese_id, sec_id, semester, year, grade都相同)的信息,能否插入成功?解释原因。alter table takes mod
7、ify(ID not null,course_id not null,sec_id not null);插入的数据这三个字段必须不为空,修改设置时,如果字段有为NULL则修改失败。ALTER TABLE TAKES DROP PRIMARY KEY;3. 参照表student建立一张空表student1。要求用两种方法实现 (create table; create table as )。create table student1(IDvarchar(5), name varchar(20) not null, dept_namevarchar(20), tot_crednumeric(3,0
8、) check (tot_cred = 0), primary key (ID), foreign key (dept_name) references department on delete set null);create table student2 as select * from student;4. 选择某个约束,分别设置其有效、失效,观察区别。ALTER TABLE STUDENT ENABLE CONSTRAINT SYS_C0054432;ALTER TABLE STUDENT DISABLE CONSTRAINT SYS_C0054432;选择STUDENT里面的tol_
9、red0的约束条件,将其置为有效和无效后重新查看约束状态等都看不出区别;唯一的解释是更改约束状态不改变数据库的数据。出现问题创建表时设置了约束条件,但没有设置约束名,怎么知道约束名是什么?解决方案(列出遇到的问题及其解决方法)其中专业理论知识内容包括:保安理论知识、消防业务知识、职业道德、法律常识、保安礼仪、救护知识。作技能训练内容包括:岗位操作指引、勤务技能、消防技能、军事技能。二培训的及要求培训目的安全生产目标责任书为了进一步落实安全生产责任制,做到“责、权、利”相结合,根据我公司2015年度安全生产目标的内容,现与财务部签订如下安全生产目标:一、目标值:1、全年人身死亡事故为零,重伤事故
10、为零,轻伤人数为零。2、现金安全保管,不发生盗窃事故。3、每月足额提取安全生产费用,保障安全生产投入资金的到位。4、安全培训合格率为100%。二、本单位安全工作上必须做到以下内容: 1、对本单位的安全生产负直接领导责任,必须模范遵守公司的各项安全管理制度,不发布与公司安全管理制度相抵触的指令,严格履行本人的安全职责,确保安全责任制在本单位全面落实,并全力支持安全工作。 2、保证公司各项安全管理制度和管理办法在本单位内全面实施,并自觉接受公司安全部门的监督和管理。 3、在确保安全的前提下组织生产,始终把安全工作放在首位,当“安全与交货期、质量”发生矛盾时,坚持安全第一的原则。 4、参加生产碰头会
11、时,首先汇报本单位的安全生产情况和安全问题落实情况;在安排本单位生产任务时,必须安排安全工作内容,并写入记录。 5、在公司及政府的安全检查中杜绝各类违章现象。 6、组织本部门积极参加安全检查,做到有检查、有整改,记录全。 7、以身作则,不违章指挥、不违章操作。对发现的各类违章现象负有查禁的责任,同时要予以查处。 8、虚心接受员工提出的问题,杜绝不接受或盲目指挥;9、发生事故,应立即报告主管领导,按照“四不放过”的原则召开事故分析会,提出整改措施和对责任者的处理意见,并填写事故登记表,严禁隐瞒不报或降低对责任者的处罚标准。 10、必须按规定对单位员工进行培训和新员工上岗教育;11、严格执行公司安全生产十六项禁令,保证本单位所有人员不违章作业。 三、 安全奖惩: 1、对于全年实现安全目标的按照公司生产现场管理规定和工作说明书进行考核奖励;对于未实现安全目标的按照公司规定进行处罚。 2、每月接受主管领导指派人员对安全生产责任状的落
©2010-2024 宁波自信网络信息技术有限公司 版权所有
客服电话:4008-655-100 投诉/维权电话:4009-655-100