oracle 修改字段的长度
alter table tablename modify column_name varchar2(32)
alter table tablename modify (column_name1 varchar(20) default null,column_name2 varchar2(30));

Oracle 增加修改删除字段

添加字段的语法:alter table tablename add (column datatype [default value][null/not null],….);
修改字段的语法:alter table tablename modify (column datatype [default value][null/not null],….);
删除字段的语法:alter table tablename drop (column);
添加、修改、删除多列的话,用逗号隔开。
使用alter table 来增加、删除和修改一个列的例子。

创建表结构:
create table test1
(id varchar2(20) not null);
增加一个字段:
alter table test1
add (name varchar2(30) default '....' not null);
使用一个SQL语句同时添加三个字段:
alter table test1
add (name varchar2(30) default '....(默认值)' not null,
age integer default 22 not null,
has_money number(9,2)
);

修改一个字段正规的写法是:
alter table TABLE_NAME rename column FIELD_NAME to NEW_FIELD_NAME;
删除一个字段
alter table test1 drop column name;

注意:如果某一列中已经存在值,如果你要修改的为比这些值还要小的列宽这样将会出现一个错误。
前面如果我们插入一个值
insert into test1 values (’1′,’我们很爱你’);
然后曾修改列: alter table test1 modify (name varchar2(8));
将会得到以下错误:
ERROR 位于第 2 行:
ORA-01441: 无法减小列长度, 因为一些值过大

高级用法:
重命名表
ALTER TABLE table_name RENAME TO new_table_name;
修改列的名称
语法:
ALTER TABLE table_name RENAME COLUMN supplier_name to sname;
范例:
alter table s_dept rename column age to age1;
附:
创建带主键的表
create table student (
studentid int primary key not null,
studentname varchar(8),
age int);

创建表的同时创建主键约束
(1)无命名
create table student (
studentid int primary key not null,
studentname varchar(8),
age int);
(2)有命名
create table students (
studentid int ,
studentname varchar(8),
age int,
constraint yy primary key(studentid));

删除表中已有的主键约束
(1)无命名
可用 SELECT * from user_cons_columns;
查找表中主键名称得student表中的主键名为SYS_C002715
alter table student drop constraint SYS_C002715;
(2)有命名
alter table students drop constraint yy;
向表中添加主键约束
alter table student add constraint pk_student primary key(studentid);

附一个报错信息说明:
报错 RecordGrid0: Column index -1 out of range
或   Column Index out of range, 6 > 5
就是  字段与数据段个数不符造成的

字段名
字段类型
字段长度
是否主键
字段允许空
缺省值
字段中文名称

在sql中查询表名的语句
SELECT TABLE_NAME,COMMENTS FROM All_Tab_Comments WHERE owner='XSGZGL';
insert into yhb select * from tmp_yhb20160226;

备注:随笔中内容来源于网上资料整理,仅供参考。

最新文章

  1. 多线程爬坑之路-Thread和Runable源码解析
  2. [Maven]Maven入门教程
  3. 我的git学习
  4. 没有为扩展名.htm注册的生成提供程序,没有为扩展名.html注册的生成提供程序
  5. android用户界面详尽教程实例
  6. VC++获取计算机Hardware Information (CPU ID, MainBoard Info, Hard Disk Serial, System Information)
  7. 第一百九十五天 how can I 坚持
  8. 发现UC/OS-III源码有一处不明白!会不会是BUG.高手过来看看!
  9. linux下添加PATH环境变量
  10. wcf中的使用全双工通信
  11. [oracle]Oracle数据库安全管理
  12. Entity Framework入门教程:什么是Entity Framework
  13. bash中(),{},(()),[],[[]]的区别
  14. ubuntu 常用命令集
  15. pandas DataFrame(3)-轴
  16. ios开发之--NSString中substringFromIndex,substringWithRange,substringToIndex方法的使用
  17. 全新升级的WiFi无线上网短信认证系统,适用于咖啡厅、足浴等公共场所,提高门门店营业收入
  18. phpmyadmin快速安装
  19. Americans are usually tolerant (Listen speak of Unit 2)
  20. SpringBoot自动化配置的注解开关原理

热门文章

  1. beanstalkd 安装和配置
  2. vue中淡入淡出示例
  3. PyTorch笔记之 scatter() 函数
  4. JavaSE编码试题强化练习4
  5. mysql字符串拆分实现split功能
  6. Python 特性?
  7. python学习三十九天filter() map()用法及lambda搭配使用
  8. SpringDataJPA使用
  9. 搜索(DFS)---能到达的太平洋和大西洋的区域
  10. 性能分析之profiling及火焰图