数据库技术
1、数据库中的表
关系表(relational table)使用Oracle提供的数据库类型,存储行数据的表。
对象关系表(object-relational table)自己定义的数据类型。
索引组织表(index-organized table)创建一个表,这个表把数据数据存储在一个索引结构中,使得表中的数据根据索引的值排序。
分区表(partitioned table)把一个表分成多个部分,并单独管理表的每个部分。
物化视图(materialized view)由查询检索到数据的副本。
临时表(temporary table)
集群表(clustered table)如果两个表通常会被一起查询,那么可以通过集群结构把他们存储到物理相邻的位置。
删除的表(dropped table)可以通过flashback table to before drop 命令迅速恢复已删除的表。
2、数据库中的索引
B 树索引(B tree index)Oracle中标准的索引类型,它对于选择符合某个等式条件或范围条件的数据非常有用。create index 。
位图索引(bitmap index)对于只有极少几个值的列,位图索引也许能够提高性能,位图索引只应该在数据被批量加载时使用。
反键索引(reverse key index)如果在插入连续数据时牵涉I/O操作,Oracle会在存储数据之前动态的反转已经按索引排序好的数据。
基于函数的索引(function-based index)基于函数的索引可以为Oracle优化器在选择执行路径时提供更多的选择。
分区索引(partitioned index)索引分区可以只作用于表分区,也可以作用于表中的所有行。
文本索引(text index)可以文本数据为索引,以支持高级的搜索功能。
下面是实现人性化设计的10条建议:
与用户合作。使他们加入项目小组并教会他们关系模型和SQL。
和用户一起为表、列、键和数据命名,开发一个应用程序标准来确保名称的一致性。
使用由意义的、易于记忆的、描述性的、简洁的、单数形式的自然语言单词。以统一的方式使用下划线,或者始终不使用。
在命名时不能混合不同的级别。
避免代码和缩写。
尽最大可能使用由意义的键。
分解过载键。
除了对数据进行分析和设计,还要对任务进行分析和设计。记住规范化过程不是设计过程。
把任务由用户手工操作改为计算机操作。用开发周期和存储空间换取应用程序的易用性物有所值的。
不要一味追求开发速度,在分析、设计、测试和调整上多花时间和心思。
欢迎关注“自学Oracle”
领取专属 10元无门槛券
私享最新 技术干货