// 创建一个序列
CREATE SEQUENCE Car_GUID increment by 1;
// 创建一个表
CREATE TABLE Car
(
GUID NUMBER NOT NULL PRIMARY KEY,
PhoneId Char(11) NOT NULL,
UserName VarChar(20) NOT NULL
);
// 添加注释
comment on table car is '定位信息用户表';
Comment on column car.guid is '自增字段';
Comment on column Car.PhoneId is '电话唯一标识';
Comment on column Car.UserName is '用户名称';
// 添加一条记录
INSERT INTO Car(GUID, PhoneId, UserName) Values(CAR_GUID.nextval, '13589256783', '张三');
// 提交
commit;
// 触发器
create or replace trigger Trigger_Car_GUID_Insert
before insert on Car
for each row
begin
select CARGUIDSEQ.nextval into :new.GUID from sys.dual;
end;
-----------------------------下面是自已建的测试表----------------------------
CREATE SEQUENCE Car_GUID increment by 1;
// 创建一个表
CREATE TABLE Car
(
GUID NUMBER NOT NULL PRIMARY KEY,
PhoneId Char(11) NOT NULL,
UserName VarChar(20) NOT NULL
);
// 添加注释
comment on table car is '定位信息用户表';
Comment on column car.guid is '自增字段';
Comment on column Car.PhoneId is '电话唯一标识';
Comment on column Car.UserName is '用户名称';
// 添加一条记录
INSERT INTO Car(GUID, PhoneId, UserName) Values(CAR_GUID.nextval, '13589256783', '张三');
// 提交
commit;
// 触发器
create or replace trigger Trigger_Car_GUID_Insert
before insert on Car
for each row
begin
select CARGUIDSEQ.nextval into :new.GUID from sys.dual;
end;
-----------------------------下面是自已建的测试表----------------------------
/*create table STUBASEINFO(ID NUMBER(10) CONSTRAINT STUBINFO_id_pk PRIMARY KEY, STUID NUMBER(8) NOT NULL UNIQUE, STUNAME VARCHAR2(20) NOT NULL, SEX NUMBER DEFAULT 1 NOT NULL, PHONE VARCHAR2(13), MOBILE VARCHAR2(11), ADDR VARCHAR2(100), EMAIL VARCHAR(100), FLAG NUMBER DEFAULT 1 NOT NULL, OPRTIME DATE DEFAULT SYSDATE ); comment on column STUBASEINFO.STUID is '学号与学生履历表中的学号一对一'; comment on column STUBASEINFO.FLAG is '学生的状态信息' */ /* create table STURESUME(ID NUMBER(10) CONSTRAINT STURESUME_id_pk PRIMARY KEY, STUID NUMBER(8) NOT NULL UNIQUE, EXPERIENCEONE VARCHAR2(200), EXPERIENCETWO VARCHAR2(200), EXPERIENCETH VARCHAR2(200), EXPERIENCEFOUR VARCHAR2(200), EXPERIENCEFIVE VARCHAR2(200), OPRTIME DATE DEFAULT SYSDATE); COMMENT ON TABLE STURESUME IS '学生履历记录表'; COMMENT ON COLUMN STURESUME.STUID IS '学号与stubaseinfo表中一对一关系'; COMMENT ON COLUMN STURESUME.EXPERIENCEONE IS '第一个工作经验或是取得的成就'; COMMENT ON COLUMN STURESUME.OPRTIME IS '操作时间'; */ ---给两表增加序列 --CREATE SEQUENCE STUBASEINFO_ID increment by 1; --CREATE SEQUENCE STURESUME_ID increment by 1; ---给两表新增一条数据信息(测试) INSERT INTO STUBASEINFO(ID,STUID,STUNAME,SEX,MOBILE,ADDR) Values(STUBASEINFO_ID.nextval,'01080001','赵敏敏',0,'13912345678','杭州市西湖区'); INSERT INTO STURESUME(ID,STUID,EXPERIENCEONE,EXPERIENCETWO) VALUES(STURESUME_ID.NEXTVAL,'01080001','取得数据库工程师证','学生管理系统开发');
发表评论
-
oracle10g完全缷载略记
2016-07-09 15:14 851软件环境: 1、Windows7 + Oracle 10g ... -
MySQL zip版的简单安装方式
2016-06-25 17:56 813Windows下MySQL zip版的简单安装 1、下载My ... -
关系型数据库三范式解释
2016-04-07 11:54 1285数据库 三范式最简单最易记的解释,整理一下方便大家记忆。 书上 ... -
oracle中的视图详解及实例
2015-03-26 16:42 17311.创建用户并授权: cre ... -
plsql快捷键设置
2015-01-19 14:15 24541.使用PL/SQL中经常性需要输入select * fro ... -
database link问题解决
2015-01-15 15:00 6676Oracle数据库中关于databas ... -
Oracle10g创建Database link
2015-01-14 10:53 979Oracle10g创建Database link ... -
union和union all的区别
2014-12-29 16:20 1332Union因为要进行重复值扫描,所以效率低。如果合并没有刻意要 ... -
oracle数据库导入导出
2014-11-04 11:33 832oracle数据库导入导出(导出为dmp格式) 一、数据导出: ... -
Oracle中decode函数用法
2014-10-24 10:40 1228含义解释: decode(条件,值1,返回值1,值2 ... -
db语句优划与用法相关
2014-09-19 17:01 6891. oracle 中的not in() 与not exist ... -
oracle 临时表空间 和数据表空间
2014-08-25 13:28 935Oracle临时表空间主要用来做查询和存放一些缓冲区数据。临 ... -
--Oracle 删除用户和表空间
2014-08-25 11:40 2495--查看oracle所有的表空间 select dbf.tab ... -
Oracle trunc()函数的用法 to_date()
2014-07-01 14:24 1428Oracle trunc()函数的用法 --Oracle ... -
sql执行顺序
2014-06-17 21:06 865在查询中逻辑查询和 ... -
监听listener oracle 错误 1067:进程意外终止
2014-05-15 19:20 1624监听listener oracle 错误 1067:进程意外终 ... -
jdbc properties文件配置
2014-05-05 21:33 1366前言 JDBC(Java Data Base Connecti ... -
PLSQL 创建表空间和用户
2014-03-14 18:09 3548通过pl/sql登录到Oracle数据库上,然后执行菜单:文件 ... -
oracle 中删除表 drop delete truncate 的区别
2014-02-27 17:26 1004相同点,使用drop delete truncate 都会删除 ... -
oracle打开关闭服务批处理
2014-02-26 09:29 836@echo off echo 正在启动oracle服务,请稍等 ...
相关推荐
本文将详细解释如何通过创建序列与触发器来实现表中特定字段的自增长功能。 #### 一、创建测试表 首先,我们需要创建一张用于测试的表`tb1`,该表包含两个字段:`id`作为主键,`name`作为字符串类型的数据存储。 ...
使用`CREATE SEQUENCE`语句可以创建序列,可以指定初始值、增长步长、是否循环等属性。批量生成序列意味着为多个表创建独立的序列,以确保每个表的主键都有唯一的值来源。 在实际操作中,你可以通过以下步骤批量...
Oracle 中创建表、序列、自增字段、添加注释、添加记录、添加触发器、提交的知识点总结 Oracle 中创建表是指在 Oracle 数据库中创建一个新的表结构,以存储特定的数据。在创建表时,需要指定表的名称、字段名称、...
总的来说,"Oracle自增序列和触发器生成工具"是数据库开发者的实用工具,它简化了在Oracle数据库中创建和管理自增序列及触发器的过程,使得数据表的设计和维护变得更加高效。通过熟练掌握和使用这样的工具,开发者...
1. **创建序列**: ```sql CREATE SEQUENCE sequence_name MINVALUE min_value -- 序列最小值 MAXVALUE max_value -- 序列最大值 START WITH start_value -- 序列起始值 INCREMENT BY increment -- 序列增量 ...
6. **创建序列**:序列是Oracle中的一个特殊对象,用于生成唯一的整数序列号。例如: ```sql CREATE SEQUENCE seq_employee_id START WITH 1 INCREMENT BY 1; ``` 这个序列名为seq_employee_id,起始值为1,...
创建序列的SQL语句如下所示: ```sql CREATE SEQUENCE name INCREMENT BY n START WITH n [MAXVALUE | MINVALUE n] [CYCLE | NOCYCLE] [CACHE n | NOCACHE]; ``` **二、Oracle触发器** 触发器是一种数据库对象,...
在Oracle数据库中实现主键自增功能可以通过创建序列(sequence)与触发器(trigger)相结合的方式实现。这种方式不仅能够确保数据表中的主键唯一性,还能自动递增,极大地简化了开发人员的工作。 #### 创建Sequence...
创建序列的基本语法如下: ```sql CREATE SEQUENCE sequence_name START WITH start_value INCREMENT BY increment_value MINVALUE min_value MAXVALUE max_value CYCLE | NOCYCLE CACHE cache_size NOCACHE...
为了实现表中某列的自增功能,可以创建一个序列和相应的触发器。 ```sql CREATE TABLE tab_user ( id NUMBER(11) PRIMARY KEY, username VARCHAR(50), password VARCHAR(50) ); CREATE SEQUENCE my_seq ...
### 创建序列触发器 在Oracle数据库管理中,序列(Sequence)和触发器(Trigger)是两个非常实用的功能组件。它们可以有效地帮助我们自动化某些数据库操作流程,提高数据处理效率及准确性。本文将详细介绍如何在...
#### 步骤一:创建序列 序列是实现主键自动增长的基础,首先我们需要创建一个序列。在给定的部分内容中,已经展示了一个序列`SEQ_cata0`的创建语句: ```sql CREATE SEQUENCE SEQ_cata0 INCREMENT BY 1 START WITH...
创建序列的SQL语句如下: ```sql CREATE SEQUENCE my_seq START WITH 1 INCREMENT BY 1 MINVALUE 1 MAXVALUE 999999999999 CYCLE; ``` 这里的`my_seq`是序列的名称,`START WITH`定义了序列的初始值,`...
通过创建序列和触发器,我们可以实现在插入新记录时自动为主键字段生成唯一值的功能。这种方式不仅可以简化开发人员的工作,还可以确保数据的一致性和完整性。在实际应用中,序列和触发器是非常有用的工具,能够帮助...
##### 创建序列(SEQUENCE) 通过以下SQL语句可以创建一个名为`Seq_test`的序列: ```sql CREATE SEQUENCE Seq_test INCREMENT BY 1 START WITH 1 NOMAXVALUE MINVALUE 0 NOCYCLE CACHE 20 NOORDER; ``` - `...
本篇详细介绍了如何在Oracle数据库中创建一张包含自动增长主键的表`tuser`,并通过创建序列和触发器实现了这一功能。这种做法不仅能够简化主键管理的工作量,还能够确保数据的一致性和完整性。对于实际应用来说,这...
### 创建序列 (Create Sequence) #### 基本语法与示例 在 Oracle 中,序列是一个用于生成一系列数字的对象,通常用于为表中的某一列提供连续的数值。创建序列的基本语法如下: ```sql CREATE SEQUENCE sequence_...
- 使用触发器创建语句创建一个触发器,该触发器会在插入新记录到表之前为自增字段设置值。 4. **插入数据**: - 在表中插入新记录时,无需指定自增字段的值,触发器会自动为其分配序列的下一个值。 5. **验证**...
- 复制生成的表创建脚本到PL/SQL Developer或其他Oracle客户端。 2. **生成序列的创建脚本:** - 返回到序列视图,点击`Sequence Properties`对话框中的`Preview`选项卡。 - 将生成的序列创建脚本复制到表创建...
1. **对象所有权**:确保表、序列和索引等核心数据库对象创建在相应的用户表空间中,而视图、别名等辅助对象应创建在Apps用户下。避免将表直接建在APPS下,以免引发权限问题和删除操作失败。 2. **SQL脚本编写**:...