用ADO代码创建Access数据库表的自动编码字段

2017-07-15 15:07:00
zstmtony
原创
724

Access的自动编码字段非常特殊 ,用Create Table的Sql 语句 增加这种字段不太方便。


这时就需要使用adox这个对象来创建自动编码字段:


生成数据表,添加字段,其中ID字段为自动编码字段,数值自动增加.


下面是创建自动编码字段的通用函数 


Sub gf_CreateAutoIncrementField()   '创建自动编码字段--Access中国       Dim cn as object
      Dim col as object
      Dim cat as object
      Dim strTblName as string
      set cn=CreateObject("ADODB.Connection")
      set col=CreateObject("ADOX.Column")
      set cat=CreateObject("ADOX.Catalog")
      set strTblName=CreateObject("ADOX.Table")
    
    cn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\Access中国\Access数据库\Tmtony.mdb"
    Set cat.ActiveConnection = cn
 
    strTblName.Name = "tbl测试表"
    col.ParentCatalog = cat
    
    col.Type = 3
    col.Name = "Id"
    col.Properties("AutoIncrement") = true
    strTblName.Columns.Append col
    strTblName.Columns.Append "DataField",130,20
    cat.Tables.Append strTblName
 
    Set col = Nothing
    Set cat = Nothing
    cn.Close
    Set cn = Nothing
End Sub


调用方法:  
    call gf_CreateAutoIncrementField


重点:

    这里主要是使用了 字段的AutoIncrement 属性

    设置 Properties("AutoIncrement") = true

    分享