人人做人人澡人人爽欧美,国产主播一区二区,久久久精品五月天,羞羞视频在线观看免费

當(dāng)前位置:蘿卜系統(tǒng)下載站 > 技術(shù)開(kāi)發(fā)教程 > 詳細(xì)頁(yè)面

運(yùn)用@IDENTITY

運(yùn)用@IDENTITY

更新時(shí)間:2022-09-08 文章作者:未知 信息來(lái)源:網(wǎng)絡(luò) 閱讀次數(shù):


基本知識(shí)

1. IDENTITY 列不能由用戶直接更新,它是由系統(tǒng)自動(dòng)維護(hù)的。

2.該列數(shù)據(jù)類型必須為數(shù)值型:int, smallint, tinyint, decimal or numeric with scale 0。

3.該列不能為 null。

4.不能在該列上設(shè)置缺省值。

5.遞增量只能為整形(比如:1,2,-3)。不能為小數(shù),也不能為0。

6.基值(種子值 seed)可以由用戶設(shè)置,缺省值為1。

理解 @@IDENTITY

@@IDENTITY 返回最后一個(gè)插入 IDENTITY 的值,這些操作包括:INSERT, SELECT INTO,或者 bulk copy。如果在給沒(méi)有 IDENTITY 列的其他表插入記錄,系統(tǒng)將其置為 null。如果有多行記錄插入到 IDENTITY 表中,@@IDENTITY 表示最后一個(gè)產(chǎn)生的值。如果觸發(fā)了某個(gè)觸發(fā)器,并且這個(gè)觸發(fā)器執(zhí)行向另一個(gè)帶有 IDENTITY 列的表的插入操作,@@IDENTITY 將返回這個(gè)由觸發(fā)器產(chǎn)生的值。如果這個(gè)觸發(fā)器插入的表中不包含 IDENTITY 列,那么 @@IDENTITY 將為 null。如果插入操作失敗,@@IDENTITY 值依然會(huì)增加,所以 IDENTITY 不保證數(shù)據(jù)的連續(xù)性。

@@IDENTITY 是當(dāng)前連接的全局變量,只對(duì)當(dāng)前連接有效。也就是說(shuō),如果斷開(kāi)連接再重新連接后,@@IDENTITY 為 null。以 ADO 來(lái)說(shuō),@@IDENTITY 在 Connection 對(duì)象打開(kāi)和關(guān)閉期間是有意義的,即在 Connection 對(duì)象的存在范圍內(nèi)有效。在 MTS 組件中,從打開(kāi)連接到顯式的關(guān)閉連接(Connection.Close)或者到調(diào)用了 SetAbort,SetComplete之前,在這期間,@@IDENTITY 有意義。

使用 Truncate table 語(yǔ)句會(huì)使 IDENTITY 列重新開(kāi)始計(jì)算。

得到 @@IDENTITY 的值

有三種方法(以下代碼均使用 VBScript)

方法一:

Dim Conn, strSQL, Rs
Set Conn = CreateObject("ADODB.Connection")
' Open a connection to the database
Conn.Open("DSN=myDSN;UID=myUID;PWD=myPWD;")

' Insert a new record into the table
strSQL = "INSERT INTO mtTable (columnName) VALUES ('something')"

' Execute the SQL statement
Conn.Execute(strSQL)

' Get the @@IDENTITY.
strSQL = "SELECT @@IDENTITY AS NewID"
Set Rs = Conn.Execute(lsSQL)
NewID = Rs.Fields("NewID").value

' Close the connection
Conn.Close()
Set Conn = Nothing

方法二(僅限于 ADO 2.0 以上):

Dim Conn, strSQL, Rs
Set Conn = CreateObject("ADODB.Connection")
' Open a connection to the database
Conn.Open("DSN=myDSN;UID=myUID;PWD=myPWD;")

' Insert a new record into the table
lsSQL = "INSERT INTO myTable (columnName) VALUES ('something');" &_
"SELECT @@IDENTITY AS NewID;"

' Execute the SQL statement
Set Rs = Conn.Execute(lsSQL)

' Get the second resultset into a RecordSet object
Set Rs = Rs.NextRecordSet()

' Get the inserted ID
NewID = Rs.Fields("NewID").value

' Close the connection
Conn.Close()
Set Conn = Nothing

方法三:

Dim Conn, strSQL, Rs
Set Conn = CreateObject("ADODB.Connection")
' Open a connection to the database
Conn.Open("DSN=myDSN;UID=myUID;PWD=myPWD;")

' Insert a new record into the table
strSQL = "SET NOCOUNT ON;" &_
"INSERT INTO myTable (columnName) VALUES ('something');" &_
"SELECT @@IDENTITY AS NewID;"

' Execute the SQL statement
Set Rs = Conn.Execute(lsSQL)

' Get the inserted ID
NewID = Rs.Fields("NewID").value

' Close the connection
Conn.Close()
Set Conn = Nothing
(出處:熱點(diǎn)網(wǎng)絡(luò))

溫馨提示:喜歡本站的話,請(qǐng)收藏一下本站!

本類教程下載

系統(tǒng)下載排行

網(wǎng)站地圖xml | 網(wǎng)站地圖html
主站蜘蛛池模板: 周宁县| 枝江市| 乌兰察布市| 阜宁县| 沧源| 东宁县| 横峰县| 乐业县| 江陵县| 西乌珠穆沁旗| 陕西省| 宁南县| 靖安县| 阿拉善右旗| 南漳县| 台湾省| 措勤县| 彭泽县| 昔阳县| 壤塘县| 厦门市| 天水市| 台山市| 长岛县| 怀化市| 安新县| 伊金霍洛旗| 新乡县| 镇远县| 临桂县| 福鼎市| 宜州市| 原阳县| 平邑县| 湾仔区| 墨竹工卡县| 广宗县| 博湖县| 宁陕县| 台湾省| 德江县|