《大型机数据库技术》实验报告1学号201393099姓名袁绣时间2015年11月27日成绩在数据库DSNDUTDB中创建自己的表空间在自己的表空间中创建的表查询当前日期,当前时间戳Sql:selectcurrenttimestampfromsysibm.sysdummy1通过菜单方式查询数据库DBN8D91A通过SQL语句进行查询数据库DBN8D91ADSNDB06中的有哪些表空间?DSNDB06中有哪些系统表?SQL:SELECT*FROMSYSIBM.SYSDATABASEWHERENAME='DSNDB06'ANDCREATOR='SYSIBM'在DSN8D91A中找输入EMP查找,验证EMP表存在SPUFI方式创建表空间DB2ADMIN创建表空间查询表空间SQL:SELECT*FROMSYSIBM.SYSTABLESPACEWHERENAMELIKE‘ST312TS%’更改表空间删除表空间在数据库DSN8D91A中自己建立的表空间内,建立表emp和deptCREATETABLEEMP(EMPNOCHAR(4)NOTNULL,ENAMEVARCHAR(10),JOBVARCHAR(9),MGRCHAR(4),HIREDATEDATE,SALDECIMAL(7,2),COMMDECIMAL(7,2),DEPTNOCHAR(2))INDSN8D91A.ST312TS3;INSERTINTOEMP(EMPNO,ENAME,JOB,MGR,HIREDATE,SAL,DEPTNO)VALUES('7369','SMITH','CLERK','7902','1980-12-17',800,'20');INSERTINTOEMP(EMPNO,ENAME,JOB,MGR,HIREDATE,SAL,COMM,DEPTNO)VALUES('7499','ALLEN','SALESMAN','7698','1981-02-20',1600,300,'30');INSERTINTOEMP(EMPNO,ENAME,JOB,MGR,HIREDATE,SAL,COMM,DEPTNO)VALUES('7521','WARD','SALESMAN','7698','1981-02-22',1250,500,'30');INSERTINTOEMP(EMPNO,ENAME,JOB,MGR,HIREDATE,SAL,DEPTNO)VALUES('7566','JONES','MANAGER','7839','1981-04-02',2975,'20');INSERTINTOEMP(EMPNO,ENAME,JOB,MGR,HIREDATE,SAL,COMM,DEPTNO)VALUES('7654','MARTIN','SALESMAN','7689','1981-09-28',1250,1400,'20');INSERTINTOEMP(EMPNO,ENAME,JOB,MGR,HIREDATE,SAL,DEPTNO)VALUES('7698','BLACK','MANAGER','7839','1981-05-01',2850,'30');INSERTINTOEMP(EMPNO,ENAME,JOB,MGR,HIREDATE,SAL,DEPTNO)VALUES('7782','SCOTT','ANALYST','7566','1981-06-09',3000,'20');INSERTINTOEMP(EMPNO,ENAME,JOB,HIREDATE,SAL,DEPTNO)VALUES('7793','KING','PERSIDENT','1981-11-17',5000,'10');表deptCREATETABLEDEPT(DEPTNOCHAR(2)NOTNULL,DNAMEVARCHAR(14),LOCVARCHAR(13))INDSN8D91A.ST312TS4;INSERTINTODEPT(DEPTNO,DNAME,LOC)VALUES('10','ACCOUNTING','NEWYORK');INSERTINTODEPT(DEPTNO,DNAME,LOC)VALUES('20','RESEARCH','DALLAS');INSERTINTODEPT(DEPTNO,DNAME,LOC)VALUES('30','SALES','CHICAGO');INSERTINTODEPTDEPTNO,DNDEPT,LOC)VALUES('40','OPERATIONS','BOSTON')为表employee添加salary0约束,删除该约束ALTERTABLEEMPADDCONSTRAINTSALCHECKCHECK(SAL0);ALTERTABLEEMPDROPCONSTRAINTSALCHECK;添加20000salary0约束ALTERTABLEEMPADDCONSTRAINTSALCHECKCHECK(SAL0ANDSAL20000);插入一行,sal=3000,提示错误如下SQL:INSERTINTOEMP(EMPNO,SAL)VALUES('1000',30000);为表employee添加一列deptno,其定义与dept中deptno一样,并添加外键引用关系CREATEUNIQUEINDEXDEPT_UNIONDEPT(DEPTNO);CREATEUNIQUEINDEXEMP_UNIONEMP(EMPNO);ALTERTABLEDEPTADDCONSTRAINTDEPTNO_PKPRIMARYKEY(DEPTNO);ALTERTABLEEMPADDCONSTRAINTEMPNO_PKPRIMARYKEY(EMPNO);ALTERTABLEEMPADDCONSTRAINTDEPTNO_FKFOREIGNKEY(DEPTNO)REFERENCESDEPT;删除外键:ALTERTABLEEMPDROPCONSTRAINTDEPTNO_PK询出刚建立的表的信息以及其所含有的各列信息SQL:SELECT*FROMDEPTSQL:SELECT*FROMEMP建立一个名为test的表,然后删除查询当前日期,当前时间戳创建一个包含所有工资高于4000的员工视图创建一个工资低于4000的所有员工视图(待withcheckoption)SQL:CREATEVIEWSTAFF2ASSELECT*FROMEMPWHERESAL4000WITHCHECKOPTION创建一个员工及其所在部门信息的视图SQL:CREATEVIEWSTAFFASSELECTENAME,DNAMEFROMEMP,DEPTWHEREEMP.DEPTNO=DEPT.DEPTNO查询系统表中,自己所创建的视图信息SQL:SELECT*FROMSTAFF删除视图练习对带withcheckoption和不带withcheckoption的视图进行更新在employee表的empno上创建一个唯一单索引在dept表的deptno上创建一个唯一单索引在系统表中查询已经创建的索引删除已经创建的索引为表EMPt创建同义词与别名并进行查询操作SQL:CREATESYNONYMSYEMPFORIBMUSER.EMPSQL:CREATEALIASALEMPFORIBMUSER.EMP在系统表中查询已经创建的同义词与别名删除已经创建的同义词与别名查询当前日期,当前时间戳