oracle删除表字段和oracle表增加字段

时间:2023-07-16 10:52:18 

添加字段的语法: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表增加字段
0
投稿

猜你喜欢

  • 一步步教你在Navicat上如何停止正在运行的MYSQL语句

    2024-01-21 06:17:01
  • 用javascript判断浏览器版本

    2008-04-21 13:50:00
  • Python requests及aiohttp速度对比代码实例

    2023-11-22 14:40:37
  • 如何编写TOP10之类的排行榜?

    2009-11-07 18:45:00
  • python系统指定文件的查找只输出目录下所有文件及文件夹

    2021-03-23 08:00:04
  • 日常整理python执行系统命令的常见方法(全)

    2022-07-30 10:39:45
  • Python接口自动化之接口依赖

    2021-09-03 15:53:09
  • 微信小程序开发之tabbar图标和颜色的实现

    2024-06-20 01:43:02
  • XPath 1.0 学习笔记

    2009-02-25 12:19:00
  • 详解Python中键盘鼠标的相关操作

    2021-04-17 23:39:02
  • mysql8.0.23 msi安装超详细教程

    2024-01-22 13:44:14
  • 17个asp常用的正则表达式

    2008-01-15 18:58:00
  • python爬虫之模拟登陆csdn的实例代码

    2021-05-04 22:49:47
  • MySQL实现分页查询的方法

    2024-01-17 13:52:32
  • 人工智能学习Pytorch教程Tensor基本操作示例详解

    2021-06-14 17:39:22
  • Python基于pandas实现json格式转换成dataframe的方法

    2021-08-23 23:09:01
  • python实现简单倒计时功能

    2022-09-29 03:08:32
  • python 读取dicom文件,生成info.txt和raw文件的方法

    2021-06-26 14:45:50
  • python中的数据结构比较

    2023-07-20 10:58:35
  • 深入理解Python中变量赋值的问题

    2023-03-20 00:28:07
  • asp之家 网络编程 m.aspxhome.com