CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
山寨机中的战斗机! 程序优化工程师到底对IT界有没有贡献
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  其他数据库开发 >  SQL Anywhere Studio

如何修改oracle数据库中表的结构(字段的长、类型、是否为空)?

楼主arnoldyu(水中之邦)2002-04-10 14:18:26 在 其他数据库开发 / SQL Anywhere Studio 提问

如何修改oracle数据库中表的结构(字段的长、类型、是否为空)?  
  问题点数:50、回复次数:5Top

1 楼genphone_ru(哎,什么都要学,真累)回复于 2002-04-10 14:20:34 得分 3

Alter   Table   MyTable  
  Modify   ColName   VarChar2(20)   not   nullTop

2 楼arnoldyu(水中之邦)回复于 2002-04-10 14:30:53 得分 0

那如果表里有数据怎么办?还有怎么改字段的名字?Top

3 楼knightc(洋相)回复于 2002-04-10 14:36:30 得分 15

我曾经做过这样的操作:  
  1,新建一个表B,结构与要修改的表A相同,将A中所有数据导入到B中;  
  2,删掉A中所有数据,使用ALTER语句修改列属性到满意  
  3,将数据从B中导回,删除B表  
  可能有些笨,但好使Top

4 楼countach(Diablo)回复于 2002-04-10 14:38:41 得分 2

字段的名字是改不了的,但你可以先把需要改名的那个字段删掉,然后新增一个字段,如果你需要改名的那个字段有数据的话你也可以先新增一个字段,然后把要改名的字段的数据拷贝到新字段内,最后再删除要改名的字段Top

5 楼countach(Diablo)回复于 2002-04-10 14:49:00 得分 15

如果表里面有数据的话,并且要改字段名字,不防试试以下方法:  
  在原来的表上新增一个字段COL2(字段名就是你打算修改后的名字),把待修改字段(COL1)的数据放到COL2中,然后再删除COL1;  
  ALTER   TABLE   YOURTAB  
      ADD   COL2   VARCHAR2(30);  
  UPDATE   YOURTAB  
        SET   COL2=COL1;  
  ALTER   TABLE   YOURTAB  
      DROP   COLUMN   COL1;  
   
   
  Top

6 楼tarzan(呔)回复于 2002-04-10 17:02:33 得分 15

假设你的表名为ORI_TABLE,包含3个字段USER_ID   ,USER_NAME,USER_PHONE,数据类型分别是CHAR(8),  
  VARCHAR2(30),VARCHAR2(20)。PK为USER_ID.表中已经有数据。  
   
  1.如果要增加某列的大小:  
  ALTER   TABLE   ORI_TABLE   modify   USER_ID   CHAR(16)  
  2.如果要让某列的值不为空:  
  alter   table   ORI_TABLE    
  modify   (USER_ID   CHAR(8)   NOT   NULL)    
  3.如果要让某列可以为空:  
  alter   table   ORI_TABLE    
  modify   (USER_ID   CHAR(8)   NULL)  
  4.如果要改变数据类型或是列名,必须新建表:  
  create   table   NEW_TABLE  
  (USER_ID   VARCHAR2(16),  
  USER_NAME   VARCHAR2(30),  
  USER_PHONE   VARCHAR2(30)  
   
  )  
  然后从ORI_TABLE中导出数据:  
  insert   into   NEW_TABLE  
  select   *   from   ORI_TABLE    
  最后把ORI_TABLE   删除:  
  drop   table   ORI_TABLE    
  Top

相关问题

  • Oracle数据库表的字段个数有限制吗?
  • 怎么样修改一个ORACLE数据库表单中的字段名????
  • ORACLE数据库中建表时,字段是否有限制,10000?20000?
  • 请教:oracle数据库的表信息(字段名,字段类型)存在哪里
  • 如何获得数据库表中各字段的字段名?
  • VB中可以得到ORACLE某个数据库里所有的表和每个表的具体字段吗?
  • 如何修改oracle数据库中表的结构(字段的名称、长、类型、是否为空)?
  • oracle数据库如何用SQL将图片文件写入表中的字段中
  • 我要在Oracle数据库的表中建立一个自动增加字段,怎么操作啊,
  • oracle数据库中一张表的字段只能有一个是text类型吗?

关键词

  • 字段
  • 数据
  • 修改
  • 结构
  • null
  • ori
  • 表
  • yourtab
  • 类型
  • 改名

得分解答快速导航

  • 帖主:arnoldyu
  • genphone_ru
  • knightc
  • countach
  • countach
  • tarzan

相关链接

  • CSDN Blog
  • 技术文档
  • 代码下载
  • 第二书店
  • 读书频道

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo