oracle 建表 主键自增序列

(2011-10-12 11:59:22)

标签:

杂谈

分类: oracle

SQL> create table sms_activity(
  2  id number,
  3  activity_name varchar2(50),
  4  begin_time varchar2(30),
  5  end_time varchar2(30),
  6  content varchar2(600)
  7  );

表已创建。

SQL> commit;

提交完成。

SQL> alter table sms_activity add primary key (id);

表已更改。

SQL> commit;

提交完成。

SQL> create sequence sms_activity_seq
  2  minvalue 1
  3  maxvalue 9999999999
  4  increment by 1
  5  cache 20
  6  ;

序列已创建。

SQL> create or replace trigger bi_activity
  2  before insert on sms_activity
  3  for each row
  4  begin
  5  select sms_activity_seq.nextval into :NEW.ID from dual;
  6  end;
  7  /

触发器已创建

SQL> desc sms_activity
 名称                                      是否为空? 类型
 ----------------------------------------- -------- ----------------------------
 ID                                        NOT NULL NUMBER
 ACTIVITY_NAME                                      VARCHAR2(50)
 BEGIN_TIME                                         VARCHAR2(30)
 END_TIME                                           VARCHAR2(30)
 CONTENT                                            VARCHAR2(600)

SQL> alter table sms_activity add (create_time varchar2(30),createby varchar2(20),modify_time varchar2(30),modifyby varchar2(20));

表已更改。

SQL> commit;

====================================================

Oracle创建表和主键自增

来源:
Oracle创建表和主键自增 创建表: create table tuser( id number(11) not null, name varchar2(20) not null, password varchar2(20), birthday date, constraint tuser_pk primary key (id) ); 创建序列: create sequence increase_seq incre
 
-
  Oracle创建表和主键自增    创建表:
    create table tuser(
    id number(11) not null,
    name varchar2(20) not null,
    password varchar2(20),
    birthday date,
    constraint tuser_pk primary key (id)
    );
    创建序列:
    create sequence increase_seq increment by 1 start with 1 nomaxvalue nocycle cache 10;
    创建trigger:
    create or replace trigger tuser_trigger
    before insert on tuser for each row
    begin
    select increase_seq.nextval into :new.id from dual;
    end;
    /
    根据使用的工具,可能需要增加“/”来执行PL/SQL块。
    测试:
    insert into tuser(name,password,birthday) values('wujay','123456',null);
    commit;
    select * from tuser;
    ID NAME                 PASSWORD             BIRTHDAY
    ---------- -------------------- -------------------- --------------
    1 wujay                123456
    修改表:
    alter table tuser rename column id to pk_tuser;

oracle 建表 主键自增序列/////的更多相关文章

  1. Oracle删除表主键语句

    删除无名主键语句: SELECT * FROM USER_CONS_COLUMNS WHERE TABLE_NAME = '表名'; ALTER TABLE 表名 DROP CONSTRAINT 主键 ...

  2. mysql建表: 主键,外键约束

    CREATE DATABASE db_studentinfo; USE db_studentinfo ; DROP TABLE IF EXISTS t_student ; CREATE TABLE t ...

  3. 5.oracle建表的时候同时创建主键,外键,注释,约束,索引

    5.oracle建表的时候同时创建主键,外键,注释,约束,索引 1 --主键 )); ) ,constraint aba_pr primary key(id,name1)); --外键 )); --复 ...

  4. Spring中获取数据库表主键序列

    在程序开发中,我们经常有写数据库表的操作,数据表中经常带有主键自增序列,如何获取自增序列.spring中提供了相应的类 DataFieldMaxValueIncrementer. DataFieldM ...

  5. 设置MySQL数据表主键

    设置MySQL数据表主键: 使用“primary key”关键字创建主键数据列.被设置为主键列不允许出现重复的值,很多情况下与“auto_increment”递增数字相结合.如下SQL语句所示: My ...

  6. 在Oracle中设置主键自增

    转自:https://www.2cto.com/database/201705/636725.html 数据库设置主键自增">oracle数据库设置主键自增: --创建表 create ...

  7. PostgreSQL数据库中获取表主键名称

    PostgreSQL数据库中获取表主键名称 一.如下表示,要获取teacher表的主键信息: select pg_constraint.conname as pk_name,pg_attribute. ...

  8. PowerDesigner生成的ORACLE 建表脚本中去掉对象的双引号,设置大、小写

    原文:PowerDesigner生成的ORACLE 建表脚本中去掉对象的双引号,设置大.小写 若要将 CDM 中将 Entity的标识符都设为指定的大小写,则可以这么设定: 打开cdm的情况下,进入T ...

  9. SQL语句获取数据库中的表主键,自增列,所有列

    SQL语句获取数据库中的表主键,自增列,所有列   获取表主键 1:SELECT TABLE_NAME,COLUMN_NAME FROM INFORMATION_SCHEMA.KEY_COLUMN_U ...

随机推荐

  1. 大数据学习——hive使用

    Hive交互shell bin/hive Hive JDBC服务 hive也可以启动为一个服务器,来对外提供 启动方式,(假如是在itcast01上): 启动为前台:bin/hiveserver2 启 ...

  2. Python和Mongodb

    定义好链接DB类 # -*- coding: UTF-8 -*- from pymongo import MongoClient # 数据库连接 class MongoDB(object): def ...

  3. Git 二进制文件冲突解决

    Git 二进制文件冲突解决 在我们合并分支的时候,如果两个分支都进行了修改那么就会产生合并冲突.对于非二进制文件的冲突解决,git会给出冲突的位置我们可以手动修改然后再commit.但是对于非二进制文 ...

  4. HDU1757-A Simple Math Problem,矩阵快速幂,构造矩阵水过

    A Simple Math Problem 一个矩阵快速幂水题,关键在于如何构造矩阵.做过一些很裸的矩阵快速幂,比如斐波那契的变形,这个题就类似那种构造.比赛的时候手残把矩阵相乘的一个j写成了i,调试 ...

  5. UVA624 CD,01背包+打印路径,好题!

    624 - CD 题意:一段n分钟的路程,磁带里有m首歌,每首歌有一个时间,求最多能听多少分钟的歌,并求出是拿几首歌. 思路:如果是求时常,直接用01背包即可,但设计到打印路径这里就用一个二维数组标记 ...

  6. [Istio]流量管理API v1alpha3路由规则

    Istio提供一个API进行流量管理,该API允许用户将请求路由到特定版本的服务,为弹性测试注入延迟和失败,添加断路器等,所有这些功能都不必更改应用程序本身的代码.Istio 1.0中引入新的流量管理 ...

  7. [转]SQL SERVER数据库还原的方法

    SQL SERVER数据库还原的方法 在SQL SERVER 2005下还原数据库 1.新建数据库A,右键还原数据库,此时目标数据库为A,选择备份 文件B_db_201311040200.BAK,还原 ...

  8. vscode安装插件

    十分简单,知道名字叫啥后,直接搜索,安装,就完了,还可以查看自己已经安装了哪些插件. step1 如图.png step2 image.png step 3 去网上查找想要安装的插件的名字 step ...

  9. CodeVs1519 过路费

    题目描述 Description 在某个遥远的国家里,有 n个城市.编号为 1,2,3,…,n.这个国家的政府修建了m 条双向道路,每条道路连接着两个城市.政府规定从城市 S 到城市T需要收取的过路费 ...

  10. Codevs 1497 取余运算== 洛谷P 1226

    时间限制: 1 s  空间限制: 128000 KB  题目等级 : 钻石 Diamond   题目描述 Description 输入b,p,k的值,编程计算bp mod k的值.其中的b,p,k*k ...