根据提供的文件信息,我们可以归纳出本实验报告涉及的主要知识点包括:数据库用户管理、表结构创建、数据完整性约束、以及数据插入操作。 ### 数据库用户管理 在进行数据库操作之前,通常需要对用户权限进行设置。这包括用户的创建、登录认证以及权限分配等。 #### 用户创建与登录 - **创建用户**:`create user u_211 identified by password;` - 这条命令用于创建一个用户名为`u_211`的新用户,并设置密码。 - **授予权限**:`grant resource, connect to u_211;` - 创建用户后,需要通过`grant`语句来赋予该用户相应的资源访问权限。这里`resource`和`connect`是两个预定义的角色,分别代表了执行某些特定类型操作的权限集合。 - **用户登录**:`conn u_211/password;` - 成功创建并授权后,可以通过`conn`命令登录到该用户下进行后续操作。 ### 表结构创建 接下来,文件中展示了如何创建两张表`t_dept_211`和`t_emp_211`。 #### `t_dept_211`部门表 - **字段定义**: - `deptno char(4)`:部门编号,长度固定为4个字符。 - `name varchar2(32)`:部门名称,最大长度为32个字符。 - `loc varchar2(32) constraint ck_t_dept_211_loc check(loc in ('ɳ',''))`:部门位置,允许为空或为特定值‘ɳ’。 - `tel varchar2(13) constraint ck_t_dept_211_tel check(tel like '0731%' or tel like '0755%')`:电话号码,必须以‘0731’或‘0755’开头。 - **主键约束**:`constraint pk_t_dept_211_deptno primary key` - 设置`deptno`为主键,确保每个部门的唯一性。 - **插入示例**: - 插入合法数据:`insert into t_dept_211 values('0001','','ɳ','0731451006666');` - 插入非法数据:`insert into t_dept_211 values('0001','','','0731451006666');`(此处`loc`字段不允许为空字符串) - 插入正常数据:`insert into t_dept_211 values('0001','','ɳ','0731451006666');` #### `t_emp_211`员工表 - **字段定义**: - `empno char(10)`:员工编号,长度固定为10个字符。 - `ename varchar2(32)`:员工姓名,最大长度为32个字符。 - `job varchar2(12)`:职务,最大长度为12个字符。 - `mgr char(10), constraint fk_t_emp_211_mgr foreign key (mgr) references t_emp_211(empno)`:上级管理者编号,作为外键引用员工表中的员工编号。 - `hiredate date check (hiredate > to_date('19970730','yyyy-mm-dd'))`:入职日期,必须晚于1997年7月30日。 - `sal number(7,2)`:基本工资,最多包含7位数字,其中小数点后有2位。 - `comm number(7,2), constraint ck_t_emp_211_sum check ((nvl(sal,0) + nvl(comm,0)) <= 10000)`:佣金,加上基本工资后不能超过10000元。 - `deptno char(4), constraint fk_t_emp_211_deptno foreign key (deptno) references t_dept_211(deptno)`:所属部门编号,作为外键引用部门表中的部门编号。 - **插入示例**: - 插入合法数据:`insert into t_emp_211 values('0902160201','alen','³','0902160211',to_date('19961217','yyyy-mm-dd'),4000,5000,'0000');` - 插入非法数据:`insert into t_emp_211 values('0902160201','alen','³','0902160211',to_date('19991217','yyyy-mm-dd'),6000,5000,'0000');`(此处基本工资加上佣金超过了10000元) ### 数据完整性约束 为了确保数据的一致性和正确性,文件中使用了多种数据完整性约束: - **主键约束**:保证每行数据的唯一性。 - **外键约束**:确保引用关系的正确性。 - **非空约束**:某些字段不允许为空。 - **检查约束**:通过特定条件限制字段值。 通过以上内容可以看出,本次数据库实验涵盖了数据库用户管理的基本操作、表结构设计以及数据完整性控制等多个方面,旨在让学生掌握数据库设计与管理的基础知识。
- 粉丝: 0
- 资源: 1
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 2010-2020年31省第三产业占GDP比重(%)
- elasticsearch-analysis-ik 8.16.0
- HTML5实现剪刀石头布小游戏源码
- (源码)基于ArduinoIDE的ESP32CAMQR码识别系统.zip
- elasticsearch-analysis-hanlp
- 人工智能-增量学习基于密度峰值聚类和共享最近邻的IIOT机械半监督自训练故障诊断(源码+数据+说明文档).zip
- C#ASP.NET人力资源HR系统源码数据库 SQL2008源码类型 WebForm
- 基于滴滴平台211个城市数据测算的城市发展环境指数【重磅,更新!】
- (源码)基于NodeMCU和MQTT的温湿度监测系统.zip
- 一周入门FPGA源代码资料