台灣最大程式設計社群網站
線上人數
392
 
會員總數:245981
討論主題:189559
歡迎您免費加入會員
討論區列表 >> 專欄文章 >> 用SQL指令定義自動遞增欄位
[]  
[我要回覆]
回應主題 加入我的關注話題 檢舉此篇討論 將提問者加入個人黑名單
用SQL指令定義自動遞增欄位
價值 : 0 QP  點閱數:573 回應數:0
樓主

站務人員 站長
門外漢
0 1580
542 9
發送站內信

捐贈 VP 給 站務人員

Modifying an Existing Table
Once a table is created, you may want to modify it to add or remove columns, change the validation rule or refresh the link for a linked table.

The following listings demonstrate how to add a new auto-increment column to an existing table.

DAO

Sub DAOCreateAutoIncrColumn()

Dim db As DAO.Database
Dim tbl As DAO.TableDef
Dim fld As DAO.Field

' Open the database
Set db = DBEngine.OpenDatabase(".\NorthWind.mdb")

' Get the Contacts table
Set tbl = db.TableDefs("Contacts")

' Create the new auto increment column
Set fld = tbl.CreateField("ContactId", dbLong)
fld.Attributes = dbAutoIncrField

' Add the new table to the database.
tbl.Fields.Append fld

db.Close

End Sub
ADOX

Sub ADOCreateAutoIncrColumn()

Dim cat As New ADOX.Catalog
Dim col As New ADOX.Column

' Open the catalog
cat.ActiveConnection = "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=.\NorthWind.mdb;"

' Create the new auto increment column
With col
.Name = "ContactId"
.Type = adInteger
Set .ParentCatalog = cat
.Properties("AutoIncrement") = True
End With

' Append the column to the table
cat.Tables("Contacts").Columns.Append col

Set cat = Nothing

End Sub


by 全部不熟的黑手 copy from MSDN


回應者: 馬克褚

今天最大的收穫是:
我找到了!
感謝〔全熟手〕提供的解決方案!但我想找直接用SQL指令運作...
以下為方法:access適用
alter table xxx add px counter
counter即為sql server語法中的identity,但在access下要用counter
sql server語法:
alter table xxx add px int counter
access不可用:
alter table xxx add px int counter
這樣access只會新增一個int特性的欄位,但不會執行你指定的counter

本篇文章發表於2002-06-04 00:00
目前尚無任何回覆
   

回覆
如要回應,請先登入.