`
cavonchen
  • 浏览: 209410 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

MySql,MSSql,Oracle自动递增的实现方式

阅读更多
1、把主键定义为自动增长标识符类型

在mysql中,如果把表的主键设为auto_increment类型,数据库就会自动为主键赋值。例如:

create table customers(id int auto_increment primary key not null, name varchar(15));

insert into customers(name) values("name1"),("name2");

select id from customers;

以上sql语句先创建了customers表,然后插入两条记录,在插入时仅仅设定了name字段的值。最后查询表中id字段,查询结果为:

id

1

2

由此可见,一旦把id设为auto_increment类型,mysql数据库会自动按递增的方式为主键赋值。

在MS SQLServer中,如果把表的主键设为identity类型,数据库就会自动为主键赋值。例如:

create table customers(id int identity(1,1) primary key not null, name varchar(15));

insert into customers(name) values("name1"),("name2");

select id from customers;

查询结果和mysql的一样。由此可见,一旦把id设为identity类型,MS SQLServer数据库会自动按递增的方式为主键赋值。identity包含两个参数,第一个参数表示起始值,第二个参数表示增量。

2、从序列中获取自动增长的标识符

在Oracle中,可以为每张表的主键创建一个单独的序列,然后从这个序列中获取自动增加的标识符,把它赋值给主键。例如一下语句创建了一个名为customer_id_seq的序列,这个序列的起始值为1,增量为2。

create sequence customer_id_seq increment by 2 start with 1

一旦定义了customer_id_seq序列,就可以访问序列的curval和nextval属性。

curval:返回序列的当前值

nextval:先增加序列的值,然后返回序列值

以下sql语句先创建了customers表,然后插入两条记录,在插入时设定了id和name字段的值,其中id字段的值来自于customer_id_seq序列。最后查询customers表中的id字段。

create table customers(id int primary key not null, name varchar(15));

insert into customers values(customer_id_seq.curval, "name1"),(customer_id_seq.nextval, "name2");

select id from customers;

如果在oracle中执行以上语句,查询结果为:

id

1

3
分享到:
评论

相关推荐

    Mysql转Oracle软件 DBMover for Mysql to Oracle

    Dbmover for Mysql to Oracle 可以定时,定周期自动运行。 支持 Oracle 8i 以后的所有版本。 支持 Mysql 3.23 以后的所有版本。 高效直接连接Oracle和Mysql数据库。甚至不需要安装客户端。 向导式操作。 可以保存...

    mysql-oracle数据同步

    2. **编程方式**:通过编写Java、Python或其他语言的脚本,连接MySQL和Oracle数据库,读取MySQL数据,处理后写入Oracle。这种方式需要对数据库API有深入理解,比如JDBC、ODBC等。 3. **数据库复制服务**:Oracle...

    access+mssql+mysql+oracle 注入整理文档(详细图解)

    access+mssql+mysql+oracle 注入整理文档(详细图解)access+mssql+mysql+oracle 注入整理文档(详细图解)access+mssql+mysql+oracle 注入整理文档(详细图解)access+mssql+mysql+oracle 注入整理文档(详细图解)access+...

    oracle通过dblink链接 mysql和mssql例子

    Oracle数据库提供了异构服务的功能,允许从Oracle数据库实例访问其他数据库系统的数据,例如MySQL和Microsoft SQL Server (MSSQL)。这一功能主要通过使用Database Link(DBLink)来实现。DBLink是一种数据库对象,它...

    Mysql转oracle工具

    例如,MySQL的`VARCHAR2`对应Oracle的`VARCHAR2`,但MySQL的`TINYINT`在Oracle中可能是`NUMBER(3)`,`BLOB`和`CLOB`在两个系统中都有,但处理方式不同。 3. **对象权限和安全模型**: MySQL的权限管理相对简单,而...

    mysql和Oracle的多数据源配置demo

    本示例"mysql和Oracle的多数据源配置demo"聚焦于如何在SpringBoot框架下同时集成和管理MySQL与Oracle这两种不同的数据库系统,以实现多数据源的配置。这在需要处理不同数据库类型或者需要实现数据冗余和故障切换的...

    mysql 数据库转 oracle

    MySQL到Oracle的数据迁移是一项常见的任务,特别是在企业级应用中,可能因为各种原因需要从MySQL迁移到功能更强大的Oracle数据库系统。下面将详细讲解这个过程涉及的关键知识点。 首先,我们需要了解MySQL和Oracle...

    MySQL to Oracle MySQL 转 Oracle亲自测试,好用

    MySQL to Oracle MySQL 转 Oracle亲自测试,好用

    oracle mysql mssql驱动包

    JDBC驱动是实现这些接口的类库,由数据库供应商提供,如Oracle的ojdbc.jar、MySQL的mysql-connector-java.jar和MSSQL的mssql-jdbc.jar。通过JDBC,开发者可以执行SQL语句、处理结果集、事务管理等数据库操作。 在...

    MySql转换成Oracle工具

    Convert Mysql to Oracle是一个免费的数据库转换工具,实现快速安全地将Mysql数据库导入为ORACLE数据库。 Convert Mysql to Oracle 功能特点 可以转换所有的Mysql字段类型 支持所有版本的Mysql 可以将数据合并到...

    MSSQL\MYSQL\ORACLE免安装客户端

    MSSQL、MYSQL和ORACLE都是知名的DBMS,广泛应用于各种规模的企业和项目中。本资源提供的是这三大数据库系统的免安装客户端,为用户提供了一种无需繁琐安装过程即可使用的便捷方式。 1. MSSQL(Microsoft SQL Server...

    mysql导入oracle工具 Convert Mysql to Oracle

    1. **数据迁移**:工具能够自动扫描MySQL数据库中的表、视图、存储过程等对象,并将其转换为Oracle兼容的格式。这涉及到数据类型映射,因为MySQL和Oracle支持的数据类型有所不同。 2. **结构迁移**:转换过程中,...

    excel自动生成MySQL与oracle创建表语句

    支持Mysql与oracle自动在excel中生成创建sql语句,非常强大,如果想使用sqlserver看我上一资源

    三大主流数据库神速上手(MySQL、MSSQL、Oracle).rar

    本教程的"三大主流数据库神速上手(MySQL、MSSQL、Oracle).txt"文件可能包含课程大纲、学习路径或关键知识点的概述,它将帮助你按照一个有序的方式进行学习。同时,提供的源码和课件将使实践环节更加直观,通过实际...

    记使用Oracle SQL Developer 迁移MySql 数据至 Oracle.docx

    在IT领域,数据库迁移是一项常见的任务,特别是在不同的数据库系统之间,如从MySQL迁移到Oracle。本文将详细讲解如何使用Oracle...通过遵循这些指南,可以有效地将MySQL数据库转换为Oracle数据库,实现数据的无缝转移。

    全能数据库管理软件,支持oracle mysql db2 mssql ,并且是免费的

    它提及了对Oracle、MySQL、DB2和MSSQL的支持,这些都是非常流行的关系型数据库管理系统。 Oracle是由甲骨文公司提供的一个全面的、集成的、开放的、先进的企业级数据库解决方案。它以其高可用性、高性能和安全性而...

    mysql与oracle数据互导

    以上就是关于“MySQL与Oracle数据互导”的主要知识点,包括数据迁移的原理、Java编程实现方法以及在Eclipse环境中的运行方式。通过这样的方式,我们可以灵活地在两个数据库系统间进行数据交换,满足不同场景下的业务...

    springboot+mysql+oracle+druid 双数据库进行数据同步

    在Java中,`java.util.stream` API可以实现这种处理方式,将数据流从Oracle读取,按需处理并写入到MySQL。 **数据同步策略**:数据同步可以采用实时同步或定时任务方式。实时同步适用于对数据实时性要求高的场景,...

    Convert Mysql to Oracle 4.0.zip

    "Convert Mysql to Oracle 4.0"工具很可能包含了自动处理这些差异的功能,使得转换后的Oracle建表语句可以直接在Oracle环境中执行,建立相同结构的表。 在实际使用中,用户通常需要先导出MySQL的建表语句,然后用该...

    ogg sqlserver-oracle mysql-oracle mysql-mysql的同步配置参考

    在本配置参考中,我们将探讨如何使用Oracle GoldenGate(简称OGG)来实现SQL Server到Oracle,MySQL到Oracle以及MySQL到MySQL的同步配置。 1. SQL Server到Oracle的同步配置: - 首先,你需要在SQL Server上安装并...

Global site tag (gtag.js) - Google Analytics