资源描述:
《昆明理工大学数据库报告.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、《数据库原理》上机实验报告《数据库原理》上机实验报告专业:自动化、测控学号:姓名:班级:指导老师:昆明理工大学信息工程与自动化学院2014年12月15《数据库原理》上机实验报告一、实验目的与要求:l熟练使用SQL定义子语言、操纵子语言命令语句l掌握关系模型上的完整性约束机制l掌握一定的数据库管理技术l能完成简单的数据库应用开发二、实验内容及学时安排(总学时:8)(一)数据定义子语言实验(2学时)实验1:利用SQL语句创建Employee数据库程序:createdatabaseemployee结果:实验2:利用SQL语句在E
2、mployee数据库中创建人员表person、月薪表salary及部门表dept。要求:按表1、表达、表3中的字段说明创建表1person表结构字段名数据类型字段长度允许空否字段说明P_noChar6NotNull工号,主键P_nameVarchar10NotNull姓名SexChar2NotNull性别BirthdateDatetime8Null出生日期ProfVarchar10Null职称DeptnoChar4NotNull部门代码,外键(参照dept表)表2salary表结构字段名数据类型字段长度允许空否字段说明P_
3、noChar6NotNull工号,主键,外键(参照person表)BaseDec5Null基本工资BonusDec5Null奖金,要求>50FactDec5Null实发工资=基本工资+奖金MonthInt2NotNull月份表3dept表结构字段名数据类型字段长度允许空否字段说明DeptnoChar4NotNull部门代码,主键,DnameVarchar10NotNull部门名称程序:15《数据库原理》上机实验报告createtabledept(Deptnochar(4)notnull,Dnamevarchar(10)no
4、tnull,)createtableperson(P_nochar(6)notnullprimarykey,P_namevarchar(10)notnull,SexChar(10)notnull,Birthdatedatenull,Profvarchar(10)null,Deptnochar(4)notnull,Foreignkey(Deptno)Referencesdept(Deptno))createtablesalary(P_nochar(6)notnullprimarykey,BaseDec(5)null,Bonu
5、sDec(5)null,FactDec(5)null,MonthIntnotnull,Foreignkey(P_no)Referencesperson(P_no))结果:(二)数据操纵子语言实验(4学时)实验3:利用SQL语句向表person、salary和dept中插入数据。要求:按表4、表5、表6中的数据插入。表4表person中的数据P_noP_nameSexBirthDateProfDeptno000001王云男1973-4-7中级0001000002谢志文男1975-2-14中级0001000003李浩然男197
6、0-8-25高级0002000004廖小玲女1979-8-6初级0002000005梁玉琼女1970-8-25中级000315《数据库原理》上机实验报告000006罗向东男1979-5-11初级0003000007肖家庆男1963-7-14高级0003程序:insertintoperson(P_no,P_name,Sex,Birthdate,Prof,Deptno)values('000001','王云','男','1973-4-7','中级','0001')其他person表的数据插入同上。结果:表5表salary中的数
7、据P_noBaseBonusFactS_month00000121003001000002180030010000032800280100000425002501000005230027510000061750130100000724002101程序:insertintosalaryvalues('000001','2100','300','2400','1')其他salary表的数据插入同上。结果:表6表dept中的数据15《数据库原理》上机实验报告DeptnoDname0001人事部0002财务部0003市场部程序:i
8、nsertintodeptvalues('0001','人事部')其他dept表的数据插入同上。结果:实验4:(1)利用SQL语句修改表中的数据。要求:将salary表中工号为000006的员工工资增加为1800元,奖金增加为160元。程序:updatesalarysetBase=1800,Bonus=