怎么查看oracle序列 Oracle怎么查看序列
在ORACLE數(shù)據(jù)中,我建立了一些觸發(fā)器和序列.怎么查看我建立了那些觸發(fā)器和序列.具體的SQL一句是什么?
select * from dba_triggers where owner=用戶名;查看這個(gè)用戶的所有觸發(fā)器
select * from dba_constraints T where owner=用戶名 AND T.CONSTRAINT_TYPE='F';查看這個(gè)用戶中所有的外鍵約束,table_name顯示了建立在哪個(gè)表上
oracle 序列的查詢問(wèn)題
with t as
(select a.liushuihao,a.score+b.score score from teacher t1
(select liushuihao,sum(score) score from student group by liushuihao) t2
where a.liushuihao=b.liushuihao)
select b.rn,a.* from t a,(select liushuihao,row_number() over (order by liushuihao) rn from t ) b
where a.liushuihao=b.liushuihao
能看懂吧?
先按照不重復(fù)把流水號(hào)排出序號(hào),然后去關(guān)聯(lián)主表
全部選中執(zhí)行一下,什么都不用改,你把換行和空格弄好了就行
打字不易,如滿意,望采納。
Oracle 如何知道那個(gè)表用到哪個(gè)序列?急急急急急急急急急.....
序列和表沒(méi)有直接關(guān)系,一般建表和序列時(shí),都是直接在表明后面加個(gè) '_s' 來(lái)表示該序列是用于某表的。你想通過(guò)腳本來(lái)查詢的話好像沒(méi)辦法。不過(guò)可以通過(guò)like來(lái)模糊匹配:
select *
from dba_objects t
where t.owner = upper('序列所屬用戶')
and t.object_type = upper('sequence') and (t.object_name like upper('%你的表名%') or t.object_name = upper('你的表名' || '_s') );
----個(gè)人理解,如有不妥,還請(qǐng)指正,大家共同學(xué)習(xí)!??!
oracle根據(jù)序列名稱查詢序列的內(nèi)容
你可以用客戶端工具Oracle Enterprise manager Console 登錄后 打開(kāi)右擊此序列名,選擇“顯示對(duì)象DDL”就可以看到了
Oracle中序列sequence用法
) 建立序列命令
CREATE SEQUENCE [user ]sequence_name
[increment by n]
[start with n]
[maxvalue n | nomaxvalue]
[minvalue n | nominvalue];
INCREMENT BY 指定序列號(hào)之間的間隔 該值可為正的或負(fù)的整數(shù) 但不可為 序列為升序 忽略該子句時(shí) 缺省值為
START WITH 指定生成的第一個(gè)序列號(hào) 在升序時(shí) 序列可從比最小值大的值開(kāi)始 缺省值為序列的最小值 對(duì)于降序 序列可由比最大值小的值開(kāi)始 缺省值為序列的最大值
MAXVALUE 指定序列可生成的最大值
NOMAXVALUE 為升序指定最大值為 為降序指定最大值為
MINVALUE 指定序列的最小值
NOMINVALUE 為升序指定最小值為 為降序指定最小值為
) 更改序列命令
ALTERSEQUENCE [user ]sequence_name
[INCREMENT BY n]
[MAXVALUE n| NOMAXVALUE ]
[MINVALUE n | NOMINVALUE]
修改序列可以
? 修改未來(lái)序列值的增量
? 設(shè)置或撤消最小值或最大值
? 改變緩沖序列的數(shù)目
? 指定序列號(hào)是否是有序
) 刪除序列命令
DROP SEQUENCE [user ]sequence_name
從數(shù)據(jù)庫(kù)中刪除一序列
創(chuàng)建一個(gè)序列號(hào)的語(yǔ)句
CREATE SEQUENCE EXAM_NO_SEQ
START WITH
MAXVALUE
MINVALUE
CYCLE
CACHE
NOORDER;
PB中取序列號(hào)的用法
string? v_exam_no
//獲取申請(qǐng)序號(hào)
SELECT exam_no_seq nextval INTO :v_exam_no FROM dual
using ghis_database;
if ghis_database SQLCODE then
messagebox( 取檢查序號(hào)出錯(cuò) )
return
end if
其他版本
oracle中沒(méi)有自增類型的字段的 所以通常情況下需要定義一個(gè)sequence來(lái)作為自動(dòng)增長(zhǎng)類型字段的數(shù)據(jù)
于是記錄了一些關(guān)于oracle sequence的資料 已備查用!
Oracle中的序列(sequence)
: 如何定義一個(gè)序列
僅向前的數(shù)字變量(和SQL中的自動(dòng)編號(hào)有點(diǎn)像 identity( ) )
格式:
create sequence 序列名稱
start with 起始數(shù)
increment by 增長(zhǎng)量
[maxvalue 值]
[minvalue 值]
[cycle 當(dāng)?shù)竭_(dá)最大值的時(shí)候 將繼續(xù)從頭開(kāi)始]
[Nocycle 一直累加 不循環(huán)]
[Cache ]
注意
第一次NEXTVAL返回的是初始值;隨后的NEXTVAL會(huì)自動(dòng)增加你定義的INCREMENT BY值 然后返回增加后的值 CURRVAL 總是返回當(dāng)前SEQUENCE的值 但是在第一次NEXTVAL初始化之后才能使用CURRVAL 否則會(huì)出錯(cuò) 一次NEXTVAL會(huì)增加一次SEQUENCE的值
如果指定CACHE值 ORACLE就可以預(yù)先在內(nèi)存里面放置一些sequence 這樣存取的快些 cache里面的取完后 oracle自動(dòng)再取一組到cache 使用cache或許會(huì)跳號(hào) 比如數(shù)據(jù)庫(kù)突然不正常down掉(shutdown abort) cache中的sequence就會(huì)丟失 所以可以在create sequence的時(shí)候用nocache防止這種情況
example:
create sequence mySeq
start with
increment by
maxvalue
minvalue
cycle
:怎么去取序列數(shù)據(jù):
currval curenvalue
nextVal NextVlaue
example:
select mySeq nextVal from dual
注意一點(diǎn):currval只有當(dāng)nextVal執(zhí)行一次以后才可以用
在創(chuàng)建表的時(shí)候 可以使用序列
具體例子:
create table 公司基本信息表
(
ComPID int
CompName varchar ( )
)
insert into 公司基本信息表 values(mySeq nextVal AA )
:如何修改序列
修改前提是sequence 的owner 或者有ALTER ANY SEQUENCE 權(quán)限才能改動(dòng)sequence 可以alter除start至以外的所有sequence參數(shù) 如果想要改變start值 必須 drop sequence 再 re create
Alter sequence 的例子
ALTER SEQUENCE emp_sequence
INCREMENT BY
MAXvalue
CYCLE 到 后從頭開(kāi)始
NOCACHE
影響Sequence的初始化參數(shù)
SEQUENCE_CACHE_ENTRIES =設(shè)置能同時(shí)被cache的sequence數(shù)目
也可以這樣
alter sequence mySeq maxvalue
注意 不能改start with 其他隨便改(設(shè)置minvalue值的時(shí)候不能大于當(dāng)前值)
:如何查看刪除某個(gè)表空間所有序列
查看
select * from user_sequences
如何刪除:
drop sequence 序列名稱
sequence屬于什么對(duì)象
sequence不屬于某個(gè)表 也不屬于某個(gè)字段 sequence僅僅屬于某個(gè)用戶
lishixinzhi/Article/program/Oracle/201311/17518
上一篇:如何導(dǎo)出oracle視圖 數(shù)據(jù)庫(kù)怎么導(dǎo)出視圖
欄 目:oracle
下一篇:oracle中怎么用or oracle中怎么用函數(shù)計(jì)算一共有多少周
本文標(biāo)題:怎么查看oracle序列 Oracle怎么查看序列
本文地址:http://www.jygsgssxh.com/a1/oracle/17170.html
您可能感興趣的文章
- 04-02如何快速備份oracle數(shù)據(jù)庫(kù) 如何備份sql數(shù)據(jù)庫(kù)
- 04-02oracle字段怎么固定 oracle怎么改字段類型
- 04-02怎么批量導(dǎo)入oracle 怎么批量導(dǎo)入圖片
- 04-02oracle如何連接服務(wù)器的庫(kù) 數(shù)據(jù)庫(kù)連接oracle
- 04-02oracle怎么建本機(jī)庫(kù) 怎么建oracle數(shù)據(jù)庫(kù)
- 04-02Oracle如何換表空間 oracle調(diào)整表空間
- 04-02oracle如何添加系統(tǒng) oracle新建數(shù)據(jù)庫(kù)命令
- 04-02oracle中怎么用or oracle中怎么用函數(shù)計(jì)算一共有多少周
- 04-02如何導(dǎo)出oracle視圖 數(shù)據(jù)庫(kù)怎么導(dǎo)出視圖


閱讀排行
- 1C語(yǔ)言 while語(yǔ)句的用法詳解
- 2java 實(shí)現(xiàn)簡(jiǎn)單圣誕樹(shù)的示例代碼(圣誕
- 3利用C語(yǔ)言實(shí)現(xiàn)“百馬百擔(dān)”問(wèn)題方法
- 4C語(yǔ)言中計(jì)算正弦的相關(guān)函數(shù)總結(jié)
- 5c語(yǔ)言計(jì)算三角形面積代碼
- 6什么是 WSH(腳本宿主)的詳細(xì)解釋
- 7C++ 中隨機(jī)函數(shù)random函數(shù)的使用方法
- 8正則表達(dá)式匹配各種特殊字符
- 9C語(yǔ)言十進(jìn)制轉(zhuǎn)二進(jìn)制代碼實(shí)例
- 10C語(yǔ)言查找數(shù)組里數(shù)字重復(fù)次數(shù)的方法
本欄相關(guān)
- 04-02如何快速備份oracle數(shù)據(jù)庫(kù) 如何備份
- 04-02怎么批量導(dǎo)入oracle 怎么批量導(dǎo)入圖片
- 04-02oracle字段怎么固定 oracle怎么改字段類
- 04-02oracle如何連接服務(wù)器的庫(kù) 數(shù)據(jù)庫(kù)連接
- 04-02Oracle如何換表空間 oracle調(diào)整表空間
- 04-02oracle怎么建本機(jī)庫(kù) 怎么建oracle數(shù)據(jù)庫(kù)
- 04-02oracle如何添加系統(tǒng) oracle新建數(shù)據(jù)庫(kù)命
- 04-02oracle中怎么用or oracle中怎么用函數(shù)計(jì)
- 04-02如何導(dǎo)出oracle視圖 數(shù)據(jù)庫(kù)怎么導(dǎo)出視
- 04-02怎么查看oracle序列 Oracle怎么查看序列
隨機(jī)閱讀
- 08-05dedecms(織夢(mèng))副欄目數(shù)量限制代碼修改
- 04-02jquery與jsp,用jquery
- 08-05DEDE織夢(mèng)data目錄下的sessions文件夾有什
- 01-11ajax實(shí)現(xiàn)頁(yè)面的局部加載
- 01-10SublimeText編譯C開(kāi)發(fā)環(huán)境設(shè)置
- 01-10使用C語(yǔ)言求解撲克牌的順子及n個(gè)骰子
- 01-11Mac OSX 打開(kāi)原生自帶讀寫NTFS功能(圖文
- 01-10delphi制作wav文件的方法
- 08-05織夢(mèng)dedecms什么時(shí)候用欄目交叉功能?
- 01-10C#中split用法實(shí)例總結(jié)


