- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
北大青鸟OracleChapter3
锁和表分区;回顾 ;目标;锁定概念 8 - 1;锁定类型
行级锁
表级锁
行级锁
行被排他锁定
在某行的锁被释放之前,其他用户不能修改此行
使用 commit 或 rollback 命令释放锁
Oracle 通过使用 INSERT、UPDATE 和 SELECT…FOR UPDATE 语句自动获取行级锁;SELECT…FOR UPDATE 子句
在表的一行或多行上放置排他锁
用于防止其他用户更新该行
可以执行除更新之外的其他操作
;FOR UPDATE WAIT 子句
Oracle9i 中的新增功能
防止无限期地等待锁定的行
允许对锁的等待时间进行更多的控制
等待间隔必须指定为数值文字
等待间隔不能是表达式、赋值变量或 PL/SQL变量;表级锁
保护表的数据
在多个用户同时访问数据时确保数据的完整性
可以设置为三种模式:共享、共享更新和排他
语法:
Lock table table_name in mode;;共享锁
锁定表
仅允许其他用户执行查询操作
不能插入、更新和删除
多个用户可以同时在同一表中放置此锁;共享更新锁
锁定要被更新的行
允许其他用户同时查询、插入、更新未被锁定的行
在 SELECT 语句中使用“FOR UPDATE”子句,可以强制使用共享更新锁
允许多个用户同时锁定表的不同行;排他锁
与其他两种锁相比,排他锁是限制性最强的表锁
仅允许其他用户查询数据
不允许执行插入、删除和更新操作
在同一时间仅允许一位用户在表上放置排他锁
共享锁与此相反;分区的概念是指可以将表拆分为几个部分
在数据仓库应用程序中非常有用
根据键值范围对表进行拆分
表的每个部分称为“分区”
分区被独立存储和管理
通过引用逻辑表名称进行查询和更新;分区方法
分区类型
范围分区
散列分区
复合分区
列表分区;范围分区
根据列值的范围将行映射到分区
由表的分区规范进行定义:
PARTITION BY RANGE ( column_list )
由每个单独分区的分区规范进行定义:
VALUES LESS THAN ( value_list )
其中 column_list 是列的有序列表
value_list 是 column_list 中列值的有序列表;范围分区的语法:
create table table_name
(column_name data type,column_name data type,….)
partition by range(column_name)
(partition partition name values less than value,
partition partition name values less than value);;散列分区
在分区列上使用 hash 函数
是比范围分区更好的选择
如果不知道将有多少数据映射到指定的范围,散列分区非常有用
分区的数目应是 2 的幂
可以对散列分区进行命名,并将其存储在特定的表空间中;散列分区的语法:
CREATE TABLE table_name( ... )
PARTITION BY HASH(column_list)
PARTITIONSNO OF PARTITIONS
( PARTITION partition_name
TABLESPACE tablespace_name,
PARTITION partition_name
TABLESPACE tablespace_name);;复合分区
使用范围分区方法对数据进行分区,并在每一个分区内使用散列分区方法将其划分为子分区
允许命名子分区
允许将子分区存储在特定的表空间
兼具范围分区和散列分区的优点;复合分区的语法:
CREATE TABLE table_name( …… )
PARTITION BY RANGE(column_list)
SUBPARTITION BY HASH(column_list)
SUBPARTITIONS number_of_subpartitions
STORE IN(tablespace_name_list, , ,……..) ( PARTITION parition_name VALUES LESS THAN(VALUE)
( SUBPARTITION partition_name TABLESPACE tablespace_name,
...
SUBPARTITION partition_name TABLESPACE tablespace_name,
SUBPAR
您可能关注的文档
最近下载
- DL_T 267-2023 油浸式全密封卷铁心配电变压器使用技术条件.pdf VIP
- 一种新型的化纤打包机.pdf VIP
- 山东黄金集团招聘考试题库.pdf
- 贵州省黔西南州2024-2025学年七年级下学期期末语文试题(含答案).pdf VIP
- 环形混凝土电杆标准.pdf VIP
- 专项施工方案.docx VIP
- NB∕T 47018.4-2022 承压设备用焊接材料订货技术条件 第4部分:埋弧焊钢焊丝和焊剂.pdf
- 山西博大集团寿阳京鲁煤业有限责任公司兼并重组整合矿井地质报告.doc
- 贵州省黔西南州2024-2025学年七年级下学期期末考试语文试题(含答案).docx VIP
- 烟气脱硫废水处理系统培训课件.pptx VIP
文档评论(0)