国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > 綜合 > 正文

在標識列里插入特定的值

2024-07-21 02:39:17
字體:
來源:轉載
供稿:網友

  盡管你可以對標識列(identity column)的值及其任意值的用處有千條萬條理由,但是和你共同工作的一些人會堅持在給定的表格里使用連續的主要害字(PK)。然后,當發票號丟失的時候,他們就會恐慌、害怕被起訴、掩蓋錯誤,甚至更糟。
  
  為了解決這個問題,你可以創建一個帶有標識列的表格,并用一些數據行來填充它:
  
  -- Create a test table.
  CREATE TABLE TestIdentityGaps
    (
      ID int IDENTITY PRIMARY KEY,
      Description varchar(20)
    )
  GO
  -- Insert some values. The Word INTO is optional:
  INSERT [INTO] TestIdentityGaps (Description) VALUES ('One')
  INSERT [INTO] TestIdentityGaps (Description) VALUES ('Two')
  INSERT [INTO] TestIdentityGaps (Description) VALUES ('Three')
  INSERT [INTO] TestIdentityGaps (Description) VALUES ('Four')
  INSERT [INTO] TestIdentityGaps (Description) VALUES ('Five')
  INSERT [INTO] TestIdentityGaps (Description) VALUES ('Six')
  GO
  
  現在,刪除幾個數據行:
  
  DELETE TestIdentityGaps
  WHERE Description IN('Two', 'Five')
  
  在我們編寫代碼的時候,我們知道“二(Two)”和“五(Five)”這兩個值丟了。我們想要插入兩個數據行來填補這些空缺。兩個簡單的INSERT陳述式無法滿足要求;但是,它們會在序列的結尾創建主要害字。
  
  INSERT [INTO] TestIdentityGaps (Description) VALUES ('Two Point One')
  INSERT [INTO] TestIdentityGaps (Description) VALUES ('Five Point One')
  GO
  SELECT * FROM TestIdentityGaps
  
  你也無法明確地設置標識列的值:
  
  -- Try inserting an eXPlicit ID value of 2. Returns a warning.
  INSERT INTO TestIdentityGaps (id, Description) VALUES(2, 'Two Point One')
  GO
  
  為了解決這個問題,SQL服務器2000用IDENTITY_INSERT來進行設置。為了強行插入一個帶有特定值的數據行,你需要發出命令,然后在后面接上具體插入的內容:
  
  SET TestIdentityGapsON
  INSERT INTO TestIdentityGaps (id, Description) VALUES(2, 'Two Point One')
  INSERT INTO TestIdentityGaps (id, Description) VALUES(5, 'Five Point One')
  GO
  SELECT * FROM TestIdentityGaps
  
  現在你可以看到新的數據行已經用指定的主要害字值插入了。
  
  注重:對IDENTITY_INSERT的設置可以在任何特定的時候用在數據庫里的某個表格上。假如需要在一個或者多個表格里填補空缺,你就必須用具體的命令來明確地指明每個表格。
  
  你可以在一個帶有標識列的表格里插入一個具體的值,但是要這樣做的話,你必須首先把IDENTITY_INSERT的值設置為ON。假如你沒有,你就會看到一條錯誤消息。即使你把IDENTITY_INSERT的值設置為了ON,但是假如再插入一個已有的值的話,你還是會看到錯誤消息。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 旬阳县| 公主岭市| 杭锦旗| 江陵县| 三都| 岢岚县| 尚义县| 色达县| 万荣县| 东乡族自治县| 方正县| 长垣县| 兴和县| 文山县| 临泉县| 延长县| 沁源县| 闸北区| 永定县| 十堰市| 定安县| 三穗县| 堆龙德庆县| 衡阳县| 岳阳市| 灌云县| 喀喇| 嘉黎县| 宣恩县| 双江| 拉孜县| 株洲县| 海晏县| 宁国市| 合作市| 武安市| 江都市| 阿勒泰市| 通辽市| 清水河县| 阜康市|