因为公司需要,我一个开发转了实施,现在又被拉去参加了一个数据库相关岗位的面试。无奈之余,整理一下面试官的问题(oracle数据库):
1、oracle有几种索引?
常见的四种索引:
主键索引:一个表里只能有一个主键索引,主键索引数据不能为null且不能重复。
全文索引:全文索引主要针对全文文件,且只针对myisam有效。
普通索引:表中字段频繁被用来查询的字段,主要是提高查询速度。
唯一索引:字段数据是唯一的,但是可以为null,且一个表中可以创建多个唯一索引。
索引的优点:加快查询速度。
参见:https://www.cnblogs.com/cxxjohnson/p/8625719.html
2、搜索引擎
(这个是我答的时候答错了。人家问索引,我一下就想到了innoDB,还是mysql的。。尬的不行)
oracle中不存在引擎的概念。
3、oracle的事务的理解:
(四个特性:原子性,隔离性,一致性,持久性。一定要答上来啊!!)
4、主键和唯一键的区别:
a、一个表中可以有多个唯一索引,但是只能有一个主键。
b、主键一定是唯一性索引,唯一性索引并不一定就是主键
主键不允许为空,唯一键允许为空,空值不受唯一约束,也就是说可以有多个空值。
注:可以多列组合成一个唯一索引或者一个主键,即组合索引或组合主键
c、创建语法也不同:
主键:alert table T add constraint pk_t primary key(a) using index;
唯一索引:create unique index idx_t_b on t (b);
5、数据表的连接方式有几种?
innerjoin,leftjoin,rightjoin
6、常用的oracle函数有哪些?
数值型:
字符型:
7、视图的作用?
视图是虚拟表。
视图种类:关系视图,内嵌视图、对象视图、物化视图
8、数据表的运算有哪些?
交集,差集,