当前位置:首页 > CN2资讯 > 正文内容

java版我的世界创建世界时提示这是实验

3天前CN2资讯
导读:      通过创建序列来实现   ORACLE SEQUENCE的简单介绍   在oracle中sequence就是所谓的序列号,每次取的时候它会自动增加,一般用在需要按序列号排序的地方。   1、Create Sequence   你首先要有CREATE SEQUENCE或者CREATE ANY SEQUENCE权限,   CREATE SEQUENCE emp_sequence   INCREMENT BY 1 -- 每次加几个   START WITH 1 -- 从1开始计数   NOMAXVALUE -- 不设置最大值   NOCYCLE -- 一直累加,不循环   CACHE 10;   一旦定义了emp_sequence,你就可以用CURRVAL,NEXTVAL   CURRVAL=返回 sequence的当前值   NEXTVAL=增加sequence的值,然后返回 sequence 值   比如:   emp_sequence.CURRVAL   emp_sequence.NEXTVAL   可以使用sequence的地方:   - 不包含子查询、snapshot、VIEW的 SELECT 语句   - INSERT语句的子查询中   - NSERT语句的VALUES中   - UPDATE 的 SET中   可以看如下例子:   INSERT INTO emp VALUES   (empseq.nextval, 'LEWIS', 'CLERK',7902, SYSDATE, 1200, NULL, 20);   SELECT empseq.currval FROM DUAL;   但是要注意的是:   - 第一次NEXTVAL返回的是初始值;随后的NEXTVAL会自动增加你定义的INCREMENT BY值,然后返回增加后的值。CURRVAL 总是返回当前SEQUENCE的值,但是在第一次NEXTVAL初始化之后才能使用CURRVAL,否则会出错。一次NEXTVAL会增加一次SEQUENCE的值,所以如果你在同一个语句里面使用多个NEXTVAL,其值就是不一样的。明白?   - 如果指定CACHE值,ORACLE就可以预先在内存里面放置一些sequence,这样存取的快些。cache里面的取完后,oracle自动再取一组到cache。 使用cache或许会跳号, 比如数据库突然不正常down掉(shutdown abort),cache中的sequence就会丢失. 所以可以在create sequence的时候用nocache防止这种情况。   2、Alter Sequence   你或者是该sequence的owner,或者有ALTER ANY SEQUENCE 权限才能改动sequence. 可以alter除start至以外的所有sequence参数.如果想要改变start值,必须 drop sequence 再 re-create .   Alter sequence 的例子   ALTER SEQUENCE emp_sequence   INCREMENT BY 10   MAXVALUE 10000   CYCLE -- 到10000后从头开始   NOCACHE ;   影响Sequence的初始化参数:   SEQUENCE_CACHE_ENTRIES =设置能同时被cache的sequence数目。   可以很简单的Drop Sequence   DROP SEQUENCE order_seq;            最近用vs2005+oracle开发,以前从没用过oracle,对oracle的了解也是甚少.今天,老大说要我建一个表,主键必须是自动增长的.于是我就用SQL Server的方法在那建.摸索了半天就是建不了,于是我就到网上搜...原来它是用序列来解决自动增长列的.....   下面则是整理出来的一些资料...      序列:   (1).可以为表中的列自动产生值.   (2).由用户创建数据库对象,并可由多个用户共享.   (3).一般用于主键或唯一列.   例子:   create sequence my_seq ---创建序列名   start with 1 ---从1开始   increment by 1 ---每次增长1   maxvalue 999999999 ---最大值   minvalue 1 ---最小值   cycle ---循环   cache ---缓存   order   从1开始,每次增长1,最大值为999999999,之后又循环从1开始.   SQL语句:   insert into mytable values(my_seq,'aaa')   insert into mytable values(my_seq,'bbb')   结果为:   1 aaa   2 bbb   调用:   select my_seq.nextval from mytable ---新值   select my_seq.currval from mytable ---当前值      建表   CREATE TABLE table1   (id NUMBER PRIMARY KEY,   username VARCHAR2(50));      --建序列   CREATE SEQUENCE table1_seq   MINVALUE 1   MAXVALUE 9999999999   START WITH 1   INCREMENT BY 1   CACHE 30   ORDER;      --建触発器   CREATE OR REPLACE TRIGGER table1_tg   BEFORE INSERT ON table1   FOR EACH ROW   BEGIN   SELECT table1_seq.NEXTVAL INTO :NEW.id FROM DUAL;   END;      --執行   INSERT INTO table1 (username) VALUES ('張三');         Trackback:
    你可能想看:

    扫描二维码推送至手机访问。

    版权声明:本文由皇冠云发布,如需转载请注明出处。

    本文链接:https://www.idchg.com/info/22178.html

    分享给朋友:

    “java版我的世界创建世界时提示这是实验” 的相关文章

    DediPath:高性能云服务器解决方案及用户评价

    DediPath概述 DediPath成立于2017年,作为一家美国服务器提供商,它的出现标志着全球云服务市场的进一步细分和创新。这家公司专注于为用户提供广泛的服务器解决方案,特别是在满足高流量需求的场景下表现出色。回顾DediPath的发展历程,它从最初的市场探索到逐渐成为一个在行业内备受认可的品...

    腾讯云国际版:全球云服务的强者之选,满足您的业务需求

    腾讯云国际版概述 腾讯云国际版的定义与背景 腾讯云国际版是腾讯公司专为全球客户推出的一款云服务产品,旨在满足不同国家和地区用户的需求。它在功能上与国内版本相似,但根据国际市场的需求进行了优化,以确保服务的稳定性和流畅性。作为一名用户,我发现腾讯云国际版特别注重数据隐私和合规性,这对于希望拓展海外市场...

    LOC论坛注册流程与用户参与指南

    在使用LOC论坛之前,首先需要了解注册流程。这是加入我们社区的第一步,同时也是体验一系列资源和活动的通行证。整个注册过程相对简单明了,我会在这里做一个详细的解读,确保每个人都能顺利完成注册。 在LOC论坛的首页,找到“注册”按钮。点击后,会出现一个填写信息的页面。通常,你需要提供电邮地址、用户名以及...

    如何选择国外便宜域名注册网站,降低创业成本

    在当今互联网的时代,拥有一个适合自己的域名几乎是每个企业和个人的基本需求。便宜域名,是指那些注册费用相对较低的域名。它们并不等于价格低廉的劣质选择。相反,这些域名能够为无数初创企业与个人项目提供一个良好的起点。便宜域名的定义不仅仅是价格上的划分,更是对资源的有效管理和合理利用。 选择便宜域名的优势体...

    LayerStack:灵活高效的云托管解决方案

    什么是LayerStack? 谈到LayerStack,很多人可能会问这到底是个什么东西。在我看来,LayerStack可以理解为一种云计算平台,它为用户提供便捷的云托管服务。想象一下,你在一个虚拟化的环境中运行各种应用程序和服务,LayerStack正是这样的地方。它让用户能够快速部署和管理他们的...

    阿里域名转出详细步骤与优势介绍

    在数字化时代,域名丝毫不只是一个简单的地址,而是我们网络身份的体现。有时候,我们需要将域名从一个注册商转移到另一个平台,这个过程就叫做域名转出。特别是在使用阿里云这个广受欢迎的域名注册平台时,了解阿里域名转出的总体概述尤为重要。 首先,什么是域名转出?简单来说,域名转出是指将你已经在一个注册商那里购...