一、表Table

測试表:MY_TEST_TABLE

-- Create table
create table MY_TEST_TABLE
(
A VARCHAR2(30),
B NUMBER(10) default 1,
C DATE
)
tablespace BOSSWG_CFG
pctfree 10
initrans 1
maxtrans 255
storage
(
initial 64K
minextents 1
maxextents unlimited
);
-- Add comments to the table
comment on table MY_TEST_TABLE
is 'test';
-- Add comments to the columns
comment on column MY_TEST_TABLE.A
is 'aaaa';
comment on column MY_TEST_TABLE.B
is 'bbbb';
comment on column MY_TEST_TABLE.C
is 'cccc';

0.添加字段

alter table MY_TEST_TABLE add D VARCHAR2(50);

-- Add comments to the columns 

comment on column MY_TEST_TABLE.D

  is 'dddddd';

1. 改动表字段名

alter table MY_TEST_TABLE rename column A to D;  //将A字段名改成D

2. 改动表字段类型

alter table MY_TEST_TABLE modify B varchar2(10);  //将B字段的number(10)类型改动为varchar2(10)

3. 改动表字段默认值

alter table MY_TEST_TABLE modify B default 2;  //将B字段的默认值1改成2

4. 改动表字段的非空属性

alter table MY_TEST_TABLE modify B not null;  // 将B字段改成非空

5. 改动表字段的备注

comment on column MY_TEST_TABLE.B   // 改动B字段的备注值

  is 'bbbb2';

6. 主键操作

alter table MY_TEST_TABLE

  add constraint PK_MY_TEST_TABLE primary key (A);  //加入主键

alter table MY_TEST_TABLE

  drop constraint PK_MY_TEST_TABLE cascade;  //删除主键

//假设要改动主键的话。即必须先删除主键,再加入主键。

7.check约束操作

alter table MY_TEST_TABLE                

  add constraint CKC_MY_TEST_TABLE_B           //加入约束

  check (B in(1,2,3));

alter table MY_TEST_TABLE

  drop constraint CKC_MY_TEST_TABLE_B;     //删除约束

//假设要改动约束。则必须先删除约束,再加入约束。

8. 外键操作

alter table MY_TEST_TABLE

  add constraint FK_MY_TEST_DTABLE_A foreign key (A)   //加入外键

  references MY_TEST_TABLE2 (A) on delete cascade;

alter table MY_TEST_TABLE

  drop constraint FK_MY_TEST_DTABLE_A;           //删除外键

//假设要改动外键。必须先删除外键,再加入外键

二、序列SEQ

測试序列:MY_TEST_SEQ

create sequence MY_TEST_SEQ
minvalue 1
maxvalue 9999999999
start with 1
increment by 1
cache 20;

1. 改动minvalue与maxvalue值:

alter sequence MY_TEST_SEQ 

minvalue 20

maxvalue 99999999999;

2. 改动nextvalue值:

alter sequence MY_TEST_SEQ increment by 8 nocache;       //由原来nextvalue值为2。改动为nextvalue值为10

select MY_TEST_SEQ.nextval from dual;

alter sequence MY_TEST_SEQ increment by 1 cache 20;    //这句必须有。不然会重置cache和增长率

alter sequence MY_TEST_SEQ increment by -8 nocache;    //由原来nextvalue值为10,改动为nextvalue值为2

select MY_TEST_SEQ.nextval from dual;

alter sequence MY_TEST_SEQ increment by 1 cache 20;    //这句必须有。不然会重置cache和增长率

Oracle 经常使用的改动语句的更多相关文章

  1. oracle数据库中的基本语句

    下面的都是最基本的oracle数据库的数据查询语句,这是我在网上整理的一份文档,方便以后自己的查看,当然,能把这些记下来就是最好的. 说明:查询表中的数据 1. select * from emp; ...

  2. 对于Oracle中分页排序查询语句执行效率的比较分析

    转自:http://bbs.csdn.net/topics/370033478 对于Oracle中分页排序查询语句执行效率的比较分析 作者:lzgame 在工作中我们经常遇到需要在Oracle中进行分 ...

  3. oracle 修改表的sql语句

    oracle 修改表的sql语句     1增加一个列:ALTER TABLE 表名 ADD(列名 数据类型);如:ALTER TABLE emp ADD(license varchar2(256)) ...

  4. 查询Oracle正在执行的sql语句

    --查询Oracle正在执行的sql语句及执行该语句的用户 SELECT b.sid oracleID, b.username 登录Oracle用户名, b.serial#, spid 操作系统ID, ...

  5. oracle数据库删除数据Delete语句和Truncate语句的对比

    oracle数据库删除数据Delete语句和Truncate语句的对比 当表中的数据不需要时,则应该删除该数据并释放所占用的空间,删除表中的数据可以使用Delete语句或者Truncate语句,下面分 ...

  6. oracle 监控执行的sql语句

    oracle 监控执行的sql语句 select * from v$sqlarea a where module='PL/SQL Developer' order by a.FIRST_LOAD_TI ...

  7. oracle查询锁表解锁语句

    --oracle查询锁表解锁语句--首先要用dba权限的用户登录,建议用system,然后直接看sql吧 --1. 如下语句 查询锁定的表: SELECT l.session_id sid, s.se ...

  8. Oracle SQL Developer中SQL语句格式化快捷键

    Oracle SQL Developer中SQL语句格式化快捷键 格式化SQL语句:Ctrl+F7

  9. oracle数据库查询日期sql语句(范例)、向已经建好的表格中添加一列属性并向该列添加数值、删除某一列的数据(一整列)

    先列上我的数据库表格: c_date(Date格式)     date_type(String格式) 2011-01-01                   0 2012-03-07         ...

随机推荐

  1. win8系统特别慢的基本判断方法

    单位有6,7台同事的电脑是win8.1.不知道什么原因,两位领导反映电脑特别慢. 我查看了一下,确实很慢. 虽然知道win8系统不好,但也不至于这样. 打开任务管理器,看了一下cpu和内存的使用状态, ...

  2. [Swust OJ 1094]--中位数(巧用set,堆排序)

    题目链接:http://acm.swust.edu.cn/problem/1094/ Time limit(ms): 1000 Memory limit(kb): 32768   中位数(又称中值,英 ...

  3. <%@ include file=” ”%> ——最简洁易懂的解释

    <%@ include file=” ”%> 假如 在B.jsp 中,使用 <%@ include file=”A.jsp”%>  ,那么就是把 A.jsp 的内容 原封不动 ...

  4. Handler没法取出消息队列中的数据的一个原因

    主线程发送消息到工作线程,工作线程的步骤是固定为3步的. Looper.prepare();//步骤1,线程里使用handler必须这样写, handler = new Handler(){//步骤2 ...

  5. Reapter 添加删除按钮

    repeater中的删除按钮和datagrid下的删除在实现上,还是有一定的区别的,由于repeater在客户端生成的html代码是非常干净的,所以特别受到众多web2.0网站的欢迎(不像datagr ...

  6. CURL基础

    下载单个文件: #下载单个文件,默认将输出打印到标准输出中(STDOUT)中curl http://www.centos.org # 将文件下载到本地并命名为mygettext.html curl - ...

  7. JVM 指令集合

    指令码 助记符 说明 0x00 nop 什么都不做 0x01 aconst_null 将null推送至栈顶 0x02 iconst_m1 将int型-1推送至栈顶 0x03 iconst_0 将int ...

  8. 2008r2 显示桌面图标

  9. BZOJ 1717: [Usaco2006 Dec]Milk Patterns 产奶的模式( 二分答案 + 后缀数组 )

    二分答案m, 后缀数组求出height数组后分组来判断. ------------------------------------------------------------ #include&l ...

  10. SuperSocket源码解析之启动过程

    一 简介 这里主要说明从配置系统引导启动SuperScoekt作为应用程序,且以控制台程序方式启动 二 启动过程 2.1 配置解析 从读取配置文件开始,直接拿到一个SocketServiceConfi ...