1.简单说一下三范式 答案:1.第一范式要求:每列都是不可再分的最小数据单元 2.第二范式要求:每个表只描述一件事情 3.第三范式要求:确保数据表中的每一列数据都和主键直接相关,而不能间接相关。 2.高水位是什么 答案: 在数据库表刚建立的时候,由于没有任何数据,所以这个时候水位线是空的,也就是说HWM为最低值。 插入了数据以后,高水位线就会上涨,但是这里也有一个特性,就是如果你采用delete语句删除数据的话,数据虽然被删除了,但是高水位线却没有降低 还是你刚才删除数据以前那么高的水位。也就是说,这条高水位线在日常的增删操作中只会上涨,不会下跌。高水位并不会下降,随之导致的是全表扫描的实际开销并没有任何减少。 释放表的高水位通常有如下几种办法: (1)对表进行MOVE操作:ALTER TABLE TABLE_NAME MOVE;。若表上存在索引,则记得重建索引。 (2)对表进行SHRINK SPACE操作:ALTER TABLE TABLE_NAME SHRINK SPACE;,注意,在执行该指令之前必须开启行移动:ALTER TABLE TABLE_NAME ENABLE ROW MOVEMENT;。该方法的优点是:在碎片整理结束后,表上相关的索引仍然有效,缺点是会产生大量的UNDO和REDO。 (3)复制要保留的数据到临时表T,DROP原表,然后RENAME临时表T为原表。 (4)exp/imp或expdp/impdp重构表。 (5)若表中没有数据则直接使用TRUNCATE来释放高水位。 3.有没有设计过表结构 4.什么是事务, 事务隔离等级有哪些 没答出来 5.描述处理过的复杂函数 存储过程 没答出来 总结:一些概念性的问题答的不够好,有些知识点没有去记