`
liss
  • 浏览: 825018 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

Oracle基础练习(三)

阅读更多
1、select 5/2,null*5 from dual,得到的两个结果分别是:2.5null因为: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数据:    LLanguage:语言
MManage:操作 DDefine:定义 CControl:控制
7
、学生成绩表(学号,课程编号,成绩,是否通过)。有的成绩可能null。所有成绩在60以下的同学,是否通过字段设置为未通过,否则设置为通过。其更新语句写为(2updae1update)
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
deletetrunatedrop有什么区别:delete是删除表的数据,删除数据时同时要维护表的索引;truncate是将表的数据和索引所占用的磁盘空间直接初始化,所以速度很快,不能回滚。drop是删除表对象。
10
主键和唯一键的区别:主键能保证一个字段不能为空,不能重复。唯一键保证一个字段值不能重复,但可以为null
11
、主键和外键的区别:主键能保证一个字段不能为空,不能重复。外键保证字段的值必须先在另一个表的主键中存在。
12
、提交和回滚有什么区别:相当于确认和撤消的功能。
13
、你对流水号的理解是:对于业务表,标记每笔业务发生的顺序号。
14、配置表空间的关键配置是:表空间文件设置为自动扩展。
配置用户的权限分别是:角色中的resouce权限(表示能够建表和增删改查等);系统中的无限表空间权限(Unlimited TableSpace)
15
、使用PowerDesign中,name的意思是:PD专用,显示字段的中文意思。 Code的意思是:数据库中字段实际的代码Comment的意思是数据库中字段实际的注释:将Code设置为大写的步骤是:模型选项中设置TableColumnCode
16、请写三个范式的规则和理解(*)
   第一范式:一个列必须只有一个值。各行必须互不相同,即一个表必须要有主键。
   第二范式:在第一范式的基础上,各个非主键列必须都依赖于主键列。
   第三范式:在第二范式的基础上,非主键列之间必须毫无关系,相互独立。
17、表间关系有三种,分别是:一对一,一对多,多对多。各举一个例子:学号和身份证号。一对多:学生,手机号;多对多:学生和课程。
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics