oracle使用sql语句增加字段示例(sql删除字段语句)

 更新时间:2013年12月31日 10:27:04   作者:  
oracle使用sql语句增加修改删除字段示例

添加字段的语法: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 test1
modify (name varchar2(16) default ‘unknown');


另:比较正规的写法是:
复制代码 代码如下:

-- Add/modify columns
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、创建表的同时创建主键约束
(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));

2、删除表中已有的主键约束

(1)无命名

可用 SELECT * from user_cons_columns;
查找表中主键名称得student表中的主键名为SYS_C002715
alter table student drop constraint SYS_C002715;

(2)有命名

复制代码 代码如下:

alter table students drop constraint yy;

3、向表中添加主键约束

复制代码 代码如下:

alter table student add constraint pk_student primary key(studentid);

相关文章

  • oracle 数据库学习 基本结构介绍

    oracle 数据库学习 基本结构介绍

    普及一下oracle的基础知识,总结一下,oracle 是由实例和数据库组成
    2012-11-11
  • Oracle回滚段使用查询代码详解

    Oracle回滚段使用查询代码详解

    这篇文章主要介绍了Oracle回滚段使用查询代码详解的相关资料,需要的朋友可以参考下
    2017-08-08
  • Oracle关联表更新操作指南

    Oracle关联表更新操作指南

    这篇文章主要给大家介绍了关于Oracle关联表更新操作的相关资料, Oracle关联更新是一种用于更新多表中某个表的数据时,引用另一个表中的数据,以避免数据错误的技术,需要的朋友可以参考下
    2023-07-07
  • sql – Oracle中匿名TABLE/VARRAY类型示例详解

    sql – Oracle中匿名TABLE/VARRAY类型示例详解

    这篇文章主要给大家介绍了关于Oracle中匿名TABLE/VARRAY类型的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用oracle具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2018-10-10
  • ORACLE查看当前账号的相关信息

    ORACLE查看当前账号的相关信息

    ORACLE 12C 后新增了一个功能,它会记录用户的最后一次登录时间:SPARE6字段记录用户的最后一次登录时间,本文给大家ORACLE如何查看当前账号的相关信息,感兴趣的朋友一起看看吧
    2021-06-06
  • Plsql Developer连接Oracle时出现Could not initialize oci.dll解决方案

    Plsql Developer连接Oracle时出现Could not initialize oci.dll解决方案

    这篇文章主要介绍了Plsql Developer连接Oracle时出现Could not initialize oci.dll解决方案,需要的朋友可以参考下
    2017-03-03
  • Oracle与Mysql主键、索引及分页的区别小结

    Oracle与Mysql主键、索引及分页的区别小结

    Oracle与Mysql主键、索引及分页的区别,学习oracle的朋友可以参考下
    2013-02-02
  • Oracle Logminer快速使用详解

    Oracle Logminer快速使用详解

    这篇文章主要介绍了Oracle Logminer使用,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-10-10
  • Oracle 游标使用总结

    Oracle 游标使用总结

    游标(CURSOR)也叫光标,在关系数据库中经常使用,在PL/SQL程序中可以用CURSOR与SELECT一起对表或者视图中的数据进行查询并逐行读取。
    2009-10-10
  • Oracle存储过程和存储函数创建方法(详解)

    Oracle存储过程和存储函数创建方法(详解)

    下面小编就为大家带来一篇Oracle存储过程和存储函数创建方法(详解)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-06-06

最新评论