ImageVerifierCode 换一换
格式:DOCX , 页数:16 ,大小:438.33KB ,
资源ID:6942340      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/6942340.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(实验5 用户模式和表结构的修改.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

实验5 用户模式和表结构的修改.docx

1、实验5 用户模式和表结构的修改实验5用户、模式和表结构的修改【实验目的与要求】 掌握ORACLE数据表进行用户授权,取消权限等相关数据控制命令; 掌握对数据库表结构修改的方法: 变更表和约束 删除表和约束【实验内容与步骤】思考问题:如何使用SQL来创建数据库表?准备工作:若上个实验的数据库表还没有创建,请先创建之,并完成数据的插入工作。5.1. 用户的创建与授权1用户的创建(1)用超级用户system在SQL*Plus中登录,并建立两个普通用户如User1,User2:提示:create user username identified by password;(默认建在SYSTEM表空间下)

2、给出相应的SQL语句:(2)显示当前连接用户:show user;show user;给出运行结果:(3)查看系统拥有哪些用户select * from all_users;给出运行结果:2. 用户权限的分配与回收(Grant和Revoke)语法:GRANT CONNECT, RESOURCE TO 用户名;GRANT SELECT,INSERT,DELETE ON表名 TO 用户名;(1)向新用户user1授权连接权限,使其可连接到数据库,写出相应的SQL语句:给出相应的SQL语句:(2)分别以User1、User2的身份从SQL-PLUS登录到数据库,并将各自的密码修改成与其用户名相同:1

3、)更改user1:给出相应的SQL语句:2) 更改user2:给出相应的SQL语句:(3)查询User1和User2各自有哪些权限,确认:User1是否具有connect权限?提示:select * from role_sys_privs ;给出相应的SQL语句:(4)以system身份登录到数据库,并修改User1用户模式的默认表空间和临时表空间分别为users和temp:给出相应的SQL语句:(5) 去掉User1的connect权限,并再次以User1的身份试着登录数据库,检查User1是否还有连接的权限。提示:REVOKE CONNECT, RESOURCE FROM 用户名;REVO

4、KE SELECT, INSERT, DELETE ON表名 FROM 用户名1, 用户名2;给出相应的SQL语句:3. 用户锁定与解锁(1)锁定User2用户:给出相应的SQL语句:(2)试图以User2身份登录数据库,结果如何?给出运行结果:(3)对User2解锁:给出相应的SQL语句:(4)再以User2身份登录数据库,看结果如何?给出相应语句和运行结果:练习5-1:请在OEM中重复上述过程1-3操作。5.2. 修改表结构SQL用ALTER TABLE语句来修改表结构。1添加新列如果要向Customer表中存储其地址信息,就需要在Customer表中添加列。语法如下:Alter tabl

5、e add (new_column_name datatype(size),.);实验5-2-1 给出在Customer表内添加地址(Address)字段,使其表结构如下图所示:给出相应的SQL语句:2修改现有列修改表中现有列的语法如下: Alter table modify(existing_column_name datatype(size),.);实验5-2-2 将客户表中Address的数据类型改为长度为30的字符型,使其结构如下图所示: 给出相应的SQL语句:练习5-2:把下列操作的结果记录下来:(1)将Customer表城市列的大小增加到25。给出相应的SQL语句:(2)将Cust

6、omer表电话列的大小减到 12。给出相应的SQL语句:注意:电话列的宽度不能减小,因为“cannot decrease column length because some value is too big”。3删除列删除表中列的语法如下:Alter table Drop(existing_column_name);实验5-2-3 删除 Customer表的Address 列,使其表结构如下图所示:给出相应的SQL语句:5.3. 创建对表的约束约束允许您定义向表中输入数据时必须遵循的某些验证或限制。 1创建对新表的约束可在两个级别定义约束 列和表。列约束语法如下: Create table

7、( Column_name1 datatye(size) constraint Primary key, Column_name2 datatype(size) constraint references referenced_table(primary_column_name of referenced table), Column_name3 datatype(size) constraint Check(), Column_name4 datatype(size) NOT NULL );表约束参考表的其他列的约束应在表级定义。 语法如下:Create table ( Column_nam

8、e1 datatype(size), . . Column_nameN datatype(size) ,Constraint Primary key (column_name1 ),Constraint Foreign key(Foreign_column_name) references referenced_table(primary_column_name of referenced table) ,Constraint Check();实验5-3-1 创建如下的OrderItem表:给出相应的SQL语句:相关说明 :约束是用来指定约束的名称的关键词,这是可选的。在上面的代码中,CK_Q

9、ty、FK1、FK2 都是约束名称。如果出现一条出错信息,显示输入了重复记录或输入的条件不符合上面提到的条件,则 Oracle 将在出错信息中显示此约束的名称。主键: 用来指定记录的唯一性。CHECK约束: 用来将列限制为包含特定值或值的范围,即有条件输入详细信息。非空值约束: 将不允许用户将列保留为空的。外键约束:用于定义参照完整性。练习5-3-1在OrderItem表中插入一条Qty值小于0的记录,观察执行结果;给出相应的SQL语句:在OrderItem表中插入一条记录,其Ono的值为“0001”,观察执行结果;给出相应的SQL语句:2对现有表创建约束也可以对现有表实施约束。语法如下:Al

10、ter table add constraint ;在上面的语法中,约束可以是主键或校验或外键约束。约束的语法与给出 INSERT 语法的表级约束相同。实验5-3-2 给Orders表添加名为“cn2”如下的约束:规定Freight属性列的值必须介于0和100之间。给出相应的SQL语句:alter table orders cn2 add constraint cn2 freight0 and freight100;实验5-3-3 给Orders表添加名为“cn1”如下的约束:Cno属性列的值非空。给出相应的SQL语句: alter table orders add constraint cn

11、1 cno is not null; 练习5-3-2 使用如下的CREATE TABLE语句创建Ewage表:然后,在Ewage表上创建如下的约束:(1)定义Ewage表的主码是Eno;给出相应的SQL语句:(2)规定奖金(Bonus)必须比基本工资(Salary)的3倍小.给出相应的SQL语句:3完整性约束的删除格式如下:ALTER TABLE tablenameDROP CONSTRAINT ;实验5-3-4 删除前面定义的名为cn1和cn2的约束。给出相应的SQL语句:alter table orders drop constraint cn1;alter table orders dr

12、op constraint cn2;5.4. 作业与思考练习题1. 创建包含给出的字段和约束的 supplier 表。 Field Datatype Constraint Scode char(2) Primary key Sname varchar2(10) not null Status number(2) City varchar2(10) not null解:2. 创建包含给定字段和约束的 parts 表。 Field Datatype Constraint pcode char(2) Primary key pname varchar2(10) not null color varc

13、har2(10) can be RED, GREEN and BLUE. QOH number(4) can not be less than ROL ROL number(4) City varchar2(15) not null Weight number(2)解:3. 创建包含给定字段和约束的 order表。 Field Datatype Constraint Orderno number(2) Primary key Scode char(2) refers scode from supplier pcode char(2) refers pcode from parts qty_su

14、pplied number(4) geater than 0 order_date date解:4. 创建包含给定字段和约束的 price 表。 Field Datatype Constraint Scode char(2) Primary key pcode char(2) Primary key price number(7,2)解:5. 从零件表删除对颜色字段的约束,然后将约束添加回去。解:6. 将新列“供应日期”添加到订单表。解:7. 将价格表中的价格字段宽度增加到 (10,2)。解:附录:Oracle 数据常见类型数据类型描述VARCHAR2(size)NVARCHAR2(size)

15、可变长度的字符串,其最大长度为 size 个字节。size 的最大值是 4000,而最小值是 1。您必须指定一个 VARCHAR2 的 size。可变长度的字符串,依据所选的国家字符集,其最大长度为 size 个字符或字节。size 的最大值取决于存储每个字符所需要的字节数,其上限为 4000 个字节。您必须为 NVARCHAR2 指定一个 size。NUMBER(p,s)精度为 p 并且数值范围为 s 的数值。精度 p 的范围是从 1 到 38。数值范围 s 的范围是从 -84 到 127。LONG可变长度的字符数据,其最大长度可达 2G 或 231 1 个字节。DATE有效日期范围从公元前

16、 4712 年 1 月 1 日到公元后 4712 年 12 月 31 日。RAW(size)长度为 size 字节的原始二进制数据。size 的最大值为 2000 字节。您必须为 RAW 值指定一个 size。LONG RAW可变长度的原始二进制数据,其最大长度可达 2G 字节。CHAR(size)NCHAR(size)固定长度的字符数据,其长度为 size 字节。size 的最大值为 2000 字节。默认或最小的 size 是一个字节。固定长度的字符数据,其长度依据国家字符集的选择为 size 个字符或字节。size 的最大值取决于存储每个字符所需要的字节数,其上限为 2000 个字节。默认或最小的 size 是一个字符或字节,这取决于字符集。CLOBNCLOB一个字符大型对象,可容纳单字节的字符。不支持宽度不等的字符集。最大大小为 4G 字节。一个字符大型对象,可容纳固定宽度的多字节字符。不支持宽度不等的字符集。最大大小为 4G 字节。储存国家字符集数据。BLOB一个二进制大对象。最大大小为 4G 字节。BFILE包含一个大型二进制文件的定位器,其存储在数据库的外面。使得可以以字节流 I/O 访问存在数据库服务器上的外部 LOB。最大大小为 4G 字节。

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1