偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

在Oracle標(biāo)識(shí)列里插入特定的值

數(shù)據(jù)庫 Oracle
Oracle標(biāo)識(shí)列是Oracle數(shù)據(jù)庫中的重要概念,下文對在Oracle標(biāo)識(shí)列里插入特定的值的方法作了詳細(xì)的說明,希望對您能有所幫助。

Oracle標(biāo)識(shí)列大家都有一些了解,下面就為您詳細(xì)介紹在Oracle標(biāo)識(shí)列里插入特定的值的實(shí)現(xiàn)方法,如果您對此方面感興趣的 話,不妨一看。

盡管你可以對Oracle標(biāo)識(shí)列(identity column)的值及其任意值的用處有千條萬條理由,但是和你共同工作的一些人會(huì)堅(jiān)持在給定的表格里使用連續(xù)的主關(guān)鍵字(PK)。然后,當(dāng)發(fā)票號(hào)丟失的時(shí)候,他們就會(huì)恐慌、害怕被起訴、掩蓋錯(cuò)誤,甚至更糟。

為了解決這個(gè)問題,你可以創(chuàng)建一個(gè)帶有Oracle標(biāo)識(shí)列的表格,并用一些數(shù)據(jù)行來填充它:

  1. -- Create a test table.  
  2. CREATE TABLE TestIdentityGaps  
  3. (  
  4. ID int IDENTITY PRIMARY KEY,  
  5. Description varchar(20)  
  6. )  
  7. GO  
  8. -- Insert some values. The word INTO is optional:  
  9. INSERT [INTO] TestIdentityGaps (Description) VALUES ('One')  
  10. INSERT [INTO] TestIdentityGaps (Description) VALUES ('Two')  
  11. INSERT [INTO] TestIdentityGaps (Description) VALUES ('Three')  
  12. INSERT [INTO] TestIdentityGaps (Description) VALUES ('Four')  
  13. INSERT [INTO] TestIdentityGaps (Description) VALUES ('Five')  
  14. INSERT [INTO] TestIdentityGaps (Description) VALUES ('Six')  
  15. GO  

現(xiàn)在,刪除幾個(gè)數(shù)據(jù)行:

  1. DELETE TestIdentityGaps  
  2. WHERE Description IN('Two', 'Five')  

在我們編寫代碼的時(shí)候,我們知道“二(Two)”和“五(Five)”這兩個(gè)值丟了。我們想要插入兩個(gè)數(shù)據(jù)行來填補(bǔ)這些空缺。兩個(gè)簡單的INSERT陳述式無法滿足要求;但是,它們會(huì)在序列的結(jié)尾創(chuàng)建主關(guān)鍵字。

  1. INSERT [INTO] TestIdentityGaps (Description) VALUES ('Two Point One')  
  2. INSERT [INTO] TestIdentityGaps (Description) VALUES ('Five Point One')  
  3. GO  
  4. SELECT * FROM TestIdentityGaps  

你也無法明確地設(shè)置標(biāo)識(shí)列的值:

  1. -- Try inserting an explicit ID value of 2. Returns a warning.  
  2. INSERT INTO TestIdentityGaps (id, Description) VALUES(2, 'Two Point One')  
  3. GO  

為了解決這個(gè)問題,SQL服務(wù)器2000用IDENTITY_INSERT來進(jìn)行設(shè)置。為了強(qiáng)行插入一個(gè)帶有特定值的數(shù)據(jù)行,你需要發(fā)出命令,然后在后面接上具體插入的內(nèi)容:

  1. SET TestIdentityGapsON  
  2. INSERT INTO TestIdentityGaps (id, Description) VALUES(2, 'Two Point One')  
  3. INSERT INTO TestIdentityGaps (id, Description) VALUES(5, 'Five Point One')  
  4. GO  
  5. SELECT * FROM TestIdentityGaps  

現(xiàn)在你可以看到新的數(shù)據(jù)行已經(jīng)用指定的主關(guān)鍵字值插入了。

注意:對IDENTITY_INSERT的設(shè)置可以在任何特定的時(shí)候用在數(shù)據(jù)庫里的某個(gè)表格上。如果需要在一個(gè)或者多個(gè)表格里填補(bǔ)空缺,你就必須用具體的命令來明確地指明每個(gè)表格。

你可以在一個(gè)帶有標(biāo)識(shí)列的表格里插入一個(gè)具體的值,但是要這樣做的話,你必須首先把IDENTITY_INSERT的值設(shè)置為ON。如果你沒有,你就會(huì)看到一條錯(cuò)誤消息。即使你把IDENTITY_INSERT的值設(shè)置為了ON,但是如果再插入一個(gè)已有的值的話,你還是會(huì)看到錯(cuò)誤消息。

 

 

【編輯推薦】

Oracle命令行自定義編輯器vi

oracle命令行登錄的實(shí)現(xiàn)

Oracle創(chuàng)建視圖的語法

Oracle創(chuàng)建表和索引

帶您詳細(xì)了解Oracle分區(qū)索引

責(zé)任編輯:段燃 來源: 互聯(lián)網(wǎng)
相關(guān)推薦

2011-05-25 13:37:15

數(shù)據(jù)庫

2010-11-16 14:15:16

oracle標(biāo)識(shí)列

2011-04-15 09:26:20

Oraclemerge語句

2010-10-19 17:09:27

sql server標(biāo)

2010-04-26 11:19:54

Oracle 10g

2010-11-11 11:56:39

SQL Server標(biāo)

2010-04-16 14:39:45

Oracle數(shù)據(jù)庫

2010-04-14 15:22:21

Oracle自動(dòng)

2010-03-29 13:19:10

OracleMulti

2010-04-16 13:59:40

Oracle數(shù)據(jù)

2010-04-13 16:08:24

Oracle數(shù)據(jù)插入

2011-05-25 14:22:01

oracle偽列偽表

2009-12-30 08:52:17

Ubuntu Tora

2010-10-27 13:16:41

oracle并行查詢

2010-07-16 09:17:07

SQL Server

2009-07-02 12:30:00

標(biāo)識(shí)值SQL Server

2010-11-19 10:48:44

oracle視圖

2010-04-30 12:38:38

Oracle進(jìn)程

2023-08-22 08:52:14

Go零值標(biāo)識(shí)符

2012-05-07 13:45:45

Oraclen 11g虛擬列數(shù)據(jù)庫
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)