oracle 设置主键、修改列等sql语句(转载)

数据库中存储数据的方式:
规则表---〉分区表
索引组织表
修改列名
alter table 表明 rename column rename 老列名 to 新列名
添加 字段
alter table 表名 add(字段名 类型);
删除字段
alter table 表名 drop column 字段名
修改列属性
alter table 表名 modify (字段名 新属性)
设置某一个字段为无用状态
alter table 表名 set unuesed column 字段名
删除无用字段
alert table 表名 drop unused cloumns
添加主键
alert table 表名 add constraint pkKey primary key(字段列表)
表分区
oracle 允许用户对标进一步的规划,即对标进一步的拆分,将表分成若干个逻辑部分,
每个部分成其为标的分区
表分区的优点
增强可用性。单个分区出现故障不会影响到其它分区
均衡IO。不同的分区可以影射到不同的磁盘中
改善性能
范围分区法
这种分区 方法是根据表中的列值的范围对标进行分区
分区时, 首先依据列中得值的可能的范围进行划分
例:
create table student

studentId integer not null,
studentName varchar2(20),
scroe integer

partition by rang(Score)
(
partition p1 values lessthan(60),
partition p2 values lessthan(70),
partition p3 values lessthan(80),
partition p4 values lessthan(maxvalue),
) ;
散列分区
散列分区法提供了一种通过制定分区编号来均匀地分布数据的方法
他通过hash 函数间数据映射到相应的分区上
它使得数据均匀的分配到各分区上,各分区大小趋向一致
例:
create table department

depno integer not null,
depname varchar2(20),

partition by hash(depno)
(
partition p1 ,
partition p2,
) ;
复合分区
复合分区是先对数据进行范围分区,然后在每个字分区理由进行散列分区的一种分区方法
例:
create table salgrade
(grade number ,losal number hisal number , hisal number )
partition by rang(grade)
subpartition by hash (losal, hisal)(
partition p1 value lessthan (10),
(subpartition sp1,subpartition sp2),
partition p1 value lessthan (20),
(subpartition sp3,subpartition sp4),
)
列表分区
列表分区允许用户明确的控制行到分区的映射
不同的范围分区或列分区,他运许按自然的方式对无序和不相干的数据集进行分组的组织
例如:
partition by list(字段)
(
partition 列名称 values (值列表),
partition 列名称 values (值列表),
。。。
。。。
partition 列名称 values (值列表)
)
指定的分区中查询
select * from tableName partition(p1)
表分区的维护
移动,添加,删除,结合, 截断,拆分,合并,交换
 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值