`
jjs_love
  • 浏览: 80962 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

ORACLE 中ID自动增加字段

    博客分类:
  • DB
阅读更多

自动增加字
 CREATE TABLE t_topic (
  topicId       NUMBER(18,0)   NOT NULL  ,                       -- 主题ID
 topicTitle   VARCHAR2(100)  NOT NULL ,                         -- 主题名
 topicContent varchar2(2000) NOT NULL ,                       -- 主题内容
 topicAuthor   VARCHAR2(20)   NOT NULL ,                        -- 主题发表者(论坛帖子发表人)
 topicBoaId   NUMBER(1,0)    NOT NULL REFERENCES t_board(boaId) , -- 主题属于论坛哪个模块
 topicHits     NUMBER(18,0)   DEFAULT '0' ,                    -- 主题点击数
 topicElite   NUMBER(1,0)    DEFAULT '0' ,                     -- 是否为精华帖子 0、否 1、是
 topicTop     NUMBER(1,0)    DEFAULT '0' ,   -- 是否置顶主题 0、否 1、是
 topicLock     NUMBER(1,0)    DEFAULT '0' ,   -- 是否禁止回复 0、否 1、是
 topicDel     NUMBER(1,0)    DEFAULT '0' ,   -- 是否删除回复 0、否 1、是(特殊用途,管理员文章不让跟贴)
 topicPubTime DATE NOT NULL,                -- 主题被创建时间
  topicReNum   NUMBER(18,0)   DEFAULT '0' ,    -- 回复主题的总数
 topicReUser   VARCHAR2(20)   DEFAULT '' ,       -- 最后回复的作者
 topicReTime   DATE           ,      -- 最后回复的时间
 topicIp      VARCHAR2(15) DEFAULT '' ,       -- 发表人的IP
 PRIMARY KEY (topicId)
);

Create Sequence t_topic_Id_sequence                                    --主题序列
INCREMENT BY 1
START WITH 1
NOMAXVALUE
NOCYCLE;

 

CREATE OR REPLACE TRIGGER t_topic_Id_trigger //触发器
BEFORE INSERT
ON t_topic
FOR EACH ROW
DECLARE
newId NUMBER(18,0);
BEGIN
SELECT t_topic_Id_sequence.nextval INTO newId FROM dual;
:new.topicId := newId;
END;

分享到:
评论

相关推荐

    oracle数据库字段值自动加1

    Oracle 数据库中,字段值自动加 1 是一个常见的需求,特别是在数据插入时需要自动生成唯一标识符的情况下。下面将详细介绍如何实现 Oracle 数据库字段值自动加 1。 首先,需要创建一个表来存储数据。在本示例中,...

    oracle id 自动递增

    Oracle数据库中的ID自动递增是通过序列(Sequence)和触发器(Trigger)配合实现的,这对于需要自动填充主键或其他顺序标识字段的情况非常有用。序列是一个数据库对象,它按照预定的规则(如每次递增1)生成唯一的...

    oracle数据库id为uuid类型时自动生成id

    oracle数据库id为uuid类型时自动生成id的工具类,不再依赖sequence自增长

    java对oracle数据库中blob字段的处理

    在IT领域,尤其是在Java开发与Oracle数据库交互的过程中,处理BLOB(Binary Large Object)类型字段是一项常见且重要的任务。BLOB字段主要用于存储大量的二进制数据,如图像、音频、视频或任何其他非文本格式的数据...

    解决mybatis使用char类型字段查询oracle数据库时结果返回null问题

    在Oracle中,char类型字段如果内容长度不够,会自动以空格方式补足长度。例如,字段namechar(5),若值为sgl,那么Oracle会自动用空格补足长度,最终值为sgl 。 因此,在使用mybatis框架对Oracle数据库进行查询操作...

    取得oracle中某表的所有字段名

    在Oracle数据库中,获取某个表的所有字段名是常见的需求,特别是在进行数据操作、数据库设计或者自动化脚本编写时。以下是一些关于如何获取Oracle表字段的详细知识。 首先,你可以使用`USER_TAB_COLUMNS`系统视图来...

    oracle建触发器与创建递增字段

    ### Oracle 创建触发器与创建递增字段 ...通过以上步骤,我们可以在Oracle数据库中成功实现递增字段的创建及触发器的自动填充功能,从而有效地管理表中的唯一标识符,简化开发流程,提升数据管理效率。

    JDBC操纵Oracle数据库中的BLOB字段

    接着,使用`PreparedStatement`对象准备SQL插入语句,并利用`setBinaryStream`方法将文件流写入到BLOB字段中。最后,通过调用`executeUpdate`方法执行插入操作,并进行事务提交或回滚处理。 #### 古老方法:分步...

    oracle字段自增长

    Oracle 字段自增长是指在 Oracle 数据库中,通过创建序列和触发器来实现字段的自动增长功能。在 Java 编程过程中,这种机制可以用来生成唯一的序号,例如订单号、流水号等。 在 Oracle 10g 中,实现字段自增长需要...

    Oracle使用序列创建自增字段

    此外,还可以通过触发器来自动为表中的字段赋值,避免手动插入时忘记指定 ID: ```sql CREATE OR REPLACE TRIGGER TRI_EMP_ID BEFORE INSERT ON T_EMPLOYEE FOR EACH ROW DECLARE NEXTID NUMBER; BEGIN IF :NEW....

    ORACLE表自动按月分区步骤

    本文详细介绍了如何在Oracle数据库中实现表的自动按月分区及本地索引的创建过程。通过上述步骤,不仅可以有效提高数据查询的速度,还能更好地管理大量的历史数据。需要注意的是,在实际部署环境中,对于索引的增删改...

    怎么在oracle10g查询所有包含某字段的表名.doc

    在数据库管理中,有时候我们需要查找所有包含特定字段的表,这对于数据治理、数据分析或优化查询性能非常有帮助。以下是如何在Oracle 10g中查询此类信息的详细步骤: 首先,我们需要了解SQL的`ALL_TAB_COLUMNS`视图...

    oracle设置主键自动增长

    此触发器的作用是在向 `example` 表中插入新记录时,如果 `ID` 字段为空,则自动为其赋一个序列值。 #### 四、插入数据 现在我们可以在 `example` 表中插入数据了,此时 `ID` 字段不需要手动指定值,由触发器自动...

    Oracle插入数据时获取自增ID

    在Oracle数据库中,当需要实现类似其他数据库系统(如MySQL、SQL Server等)中的自动增长字段功能时,通常会采用序列(sequence)和触发器(trigger)来实现这一需求。下面将详细介绍如何通过序列和触发器实现在插入...

    sqlldr导入带有自动增加的数据

    当涉及到处理带有自动增加字段的表时,SQL*Loader提供了一些灵活的方法来确保数据的正确加载,同时维护表结构的完整性。以下是对“sqlldr导入带有自动增加的数据”这一主题的详细解析,基于给定的文件信息。 ### ...

    oracle主键自动增长

    在Oracle中,我们可以创建一个触发器,在每次向表中插入新记录时自动为该记录的主键字段赋值。以下是一个简单的触发器示例: ```sql CREATE OR REPLACE TRIGGER "smslog_trig" BEFORE INSERT ON smslog FOR EACH ...

    常用数据库的自增字段创建方法汇总

    在数据库设计中,自增字段(自动增长字段)是非常常见的一种需求。它主要用于为主键提供唯一且连续递增的标识符,便于记录数据条目的唯一性。不同的数据库系统支持不同的自增字段创建方式。本文将详细介绍几种主流...

    oracle 创建id主键序列 脚本

    这样,当向`table_name`插入新记录时,如果没有为`id`字段提供值,Oracle会自动使用`seq_id`序列的下一个值。 总结来说,Oracle序列是实现主键自增的有效工具,通过创建和管理序列,可以确保数据的唯一性和有序性。...

    jsp实现向oracle中blob字段上传附件

    通过以上步骤,我们实现了使用JSP向Oracle中的BLOB字段上传附件的功能。这个过程涉及到Web表单提交、文件上传处理、JDBC数据库操作、事务管理和错误处理等多个知识点。在实际开发中,可以进一步封装为服务层方法,以...

Global site tag (gtag.js) - Google Analytics