ITPub博客

首页 > 数据库 > Oracle > Oracle表列属性修改

Oracle表列属性修改

Oracle 作者:jahol 时间:2013-01-06 16:33:17 0 删除 编辑

列属性修改

1.   扩充空间

Alter table TableName modify fieldname varchar2(30);

 

  该种方式,字段属性必须一致,如将varchar2(20) 扩充为varchar2(30);

若数据表中无数据,也可将number或integer或varchar2互相修改.

   若表中存在数据,该方法不可取.

2.   有数据记录的列属性修改:

Sql示例:

 

alter table tableName add temp varchar2(30);

 

update tableName set temp=columnName; 

 

alter  table tableName drop columncolumnName;

 

alter  table tableName rename column temp tocolumnName;

 

步骤:先添加一列,将要修改属性的那一列的值赋值给新添加的一列.即拷贝数据,然后删除要改属性的列,最后,将添加的那列改为目标修改列.

   即新建拷贝\删除原来新建列重命名为原来列

 

 

缺点:目标列属性虽然得到修改,但是列的位置变为最后.插入语句若写死,程序会出现问题.

3.   备份移植机制

可以用Access或零时表备份数据,然后删除原表中所有数据,待标准数据记录行数为0是,修改列属性,然后在将备份的数据导入.

 

缺点:繁琐,已有数据属性必须满足修改后的属性.否则会造成数据丢失.

 

 

: 若表中无数据,则通过Isqlplus、PlSql、或oracleClient本身提供的管理工具均可快捷实现表中某列属性的修改。

<!-- 正文结束 -->

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/14313981/viewspace-1116567/,如需转载,请注明出处,否则将追究法律责任。

上一篇: 没有了~
下一篇: 没有了~
请登录后发表评论 登录
全部评论

注册时间:2012-04-19