Oracle基础练习(三)

1、 select 5/2,null*5 from dual ,得到的两个结果分别是: 2.5 null 因为: null 值不能运算,不能比较 ;dual 的名字叫 虚表或哑表 ,作用是: 求表达式的值
2
select nvl( 入学日期 ,sysdate) from 学生表 : 此句的功能是: 如果入学日期为空,则返回系统日期 。其中 nvl 所起的作用是: 转换 null 值。
3
select decode( 部门 ,10,' 后勤部 ',20,' 开发部 ',' 综合部 ') from 员工表 : 此句的功能是: 如果部门字段的值为 10, 则显示为后勤部, 20 显示为开发部,其它的都显示为综合部。 ( 相当于 if if else)
4
、学生缴费表 ( 学号 , 缴纳金额,缴费日期 ) 。学号为 07001 同学在 2007-7-21 缴纳 5000 块。插入语句为 insert into 学生缴费表 ( 学号 , 缴纳金额,缴费日期 ) values(‘07001’, 5000,to_date(‘2007-7-21’,’yyyy-mm-dd’) 如果缴费日期为今天,则插入语句为: insert into 学生缴费表 ( 学号 , 缴纳金额,缴费日期 ) values(‘07001’, 5000,sysdate)
5
、用序列完成自动编号功能,一共有两个步骤,一是创建序列,命令为: _ create sequence 序列名。 二是在插入语句中使用序列对象 ( 学生表 ( 自动编号,姓名 )) insert into 学生表 ( 自动编号 , 姓名 ) values( 序列名 .nextvalue,’ 张三 ’)
说明: Oracle 用单引号, Java 用双引号。
6
( 查书 )DML 语句指: 数据操作语言 ( 增删改 ) DDL 语句指: 数据定义语言 ( 如建表 ) DCL 语句指: 数据控制语言 ( 如存储过程 )
D:Data 数据:     L Language :语言
M Manage :操作 D Define :定义  C Control :控制
7
、学生成绩表 ( 学号 , 课程编号,成绩,是否通过 ) 。有的成绩可能 null 。所有成绩在 60 以下的同学,是否通过字段设置为 未通过 ,否则设置为 通过 。其更新语句写为 (2 updae 1 update)
update test_stu t set t. 是否通过 =' 未通过 ' where nvl(t. 成绩 ,0)<60
update test_stu t set t. 是否通过 =' 通过 ' where nvl(t. 成绩 ,0)>=60
( case 语句可以一定搞定, decode 条件只能是值 )
8
、索引与序列有什么区别: 索引是数据库的一种对象,其作用是主要是加快数据库查询速度,另外也有约束的功能,如唯一索引。
9
delete trunate drop 有什么区别: delete 是删除表的数据,删除数据时同时要维护表的索引; truncate 是将表的数据和索引所占用的磁盘空间直接初始化,所以速度很快,不能回滚。 drop 是删除表对象。
10
主键和唯一键的区别: 主键能保证一个字段不能为空,不能重复。唯一键保证一个字段值不能重复,但可以为 null
11
、主键和外键的区别: 主键能保证一个字段不能为空,不能重复。外键保证字段的值必须先在另一个表的主键中存在。
12
、提交和回滚有什么区别: 相当于确认和撤消的功能。
13
、你对流水号的理解是:对于业务表,标记每笔业务发生的顺序号。
14 、配置表空间的关键配置是:表空间文件设置为自动扩展。
配置用户的权限分别是: 角色中的 resouce 权限 ( 表示能够建表和增删改查等 ) ;系统中的无限表空间权限 (Unlimited TableSpace)
15
、使用 PowerDesign 中, name 的意思是: PD 专用,显示字段的中文意思。 Code 的意思是: 数据库中字段实际的代码 Comment 的意思是 数据库中字段实际的注释 :将 Code 设置为大写的步骤是:模型选项中设置 Table Column Code
16 、请写三个范式的规则和理解 (*)
   第一范式:一个列必须只有一个值。各行必须互不相同,即一个表必须要有主键。
   第二范式:在第一范式的基础上,各个非主键列必须都依赖于主键列。
   第三范式:在第二范式的基础上,非主键列之间必须毫无关系,相互独立。
17 、表间关系有三种,分别是: 一对一,一对多,多对多。各举一个例子:学号和身份证号。一对多:学生,手机号;多对多:学生和课程。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值