cn.execute "alter table yourtable alter field1 varchar(50) null"
'引用Microsoft ADO Ext 2.5 for DDL and Security Dim cat As ADOX.Catalog Dim tbl As ADOX.Table Dim con As ADODB.Connection On Error GoTo 0 ' Create the new database. Set cat = New ADOX.Catalog cat.Create _ "Provider=Microsoft.Jet.OLEDB.4.0;" & _ "Data Source=" & DatabaseName & ";" ' Create a new table. Set tbl = New ADOX.Table tbl.Name = "TestTable" tbl.Columns.Append "FirstName", adVarWChar, 40 tbl.Columns.Append "LastName", adVarWChar, 40 tbl.Columns.Append "Birthdate", adDate tbl.Columns.Append "Weight", adInteger cat.Tables.Append tbl
'设置列可以为NULL tb1.columns("Weight").Attributes=AdColNullable '或者tb1.Columns("Weight").Properties("Jet OLEDB:Allow Zero Length") = True
' Connect to the database. Set con = cat.ActiveConnection ' Insert records. con.Execute "INSERT INTO TestTable VALUES ('Andy', 'Able', '1 Jan 1980', '150')" con.Execute "INSERT INTO TestTable VALUES ('Betty', 'Baker', #2/22/1990#, 70)" ' Close the database connection. con.Close Set con = Nothing Set tbl = Nothing Set cat = Nothing
null 在access里是 是针对必填项的 不是针对允许空串的谢谢!!!!!!!!!!!
麻烦你我的那个有问题!!!是参考你的代码以后写的 数据库和表都存在 Dim cat As ADOX.Catalog Dim tbl As ADOX.Table Dim comlu As ADOX.Column Dim conna As ADODB.Connection With conna .ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=F:\13.mdb;Persist Security Info=False" .Open End With Set cat = New ADOX.Catalog Set tbl = New ADOX.Table Set cat.ActiveConnection = conna Set tbl = cat.Tables(aaa) tb1.Columns("hh").Properties("Jet OLEDB:Allow Zero Length") = True con.Close Set conna = Nothing Set tbl = Nothing Set cat = Nothing
Dim cat As ADOX.Catalog
Dim tbl As ADOX.Table
Dim con As ADODB.Connection On Error GoTo 0 ' Create the new database.
Set cat = New ADOX.Catalog
cat.Create _
"Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=" & DatabaseName & ";" ' Create a new table.
Set tbl = New ADOX.Table
tbl.Name = "TestTable"
tbl.Columns.Append "FirstName", adVarWChar, 40
tbl.Columns.Append "LastName", adVarWChar, 40
tbl.Columns.Append "Birthdate", adDate
tbl.Columns.Append "Weight", adInteger
cat.Tables.Append tbl
'设置列可以为NULL
tb1.columns("Weight").Attributes=AdColNullable
'或者tb1.Columns("Weight").Properties("Jet OLEDB:Allow Zero Length") = True
' Connect to the database.
Set con = cat.ActiveConnection ' Insert records.
con.Execute "INSERT INTO TestTable VALUES ('Andy', 'Able', '1 Jan 1980', '150')"
con.Execute "INSERT INTO TestTable VALUES ('Betty', 'Baker', #2/22/1990#, 70)" ' Close the database connection.
con.Close
Set con = Nothing
Set tbl = Nothing
Set cat = Nothing
Dim cat As ADOX.Catalog
Dim tbl As ADOX.Table
Dim comlu As ADOX.Column
Dim conna As ADODB.Connection
With conna
.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=F:\13.mdb;Persist Security Info=False"
.Open
End With
Set cat = New ADOX.Catalog
Set tbl = New ADOX.Table
Set cat.ActiveConnection = conna
Set tbl = cat.Tables(aaa)
tb1.Columns("hh").Properties("Jet OLEDB:Allow Zero Length") = True
con.Close
Set conna = Nothing
Set tbl = Nothing
Set cat = Nothing
现在 库能传给cat但是cat的表赋不上tbl。 是什么原因呢???