Description
A TableDef object represents the stored definition of a base table or a linked table (Microsoft Jet workspaces only).
Remarks You manipulate a table definition using a TableDef object and its methods and properties. For example, you can:See Also CreateTableDef method.
Specifics (Microsoft Access) In addition to the properties defined by the Microsoft Jet database engine, a TableDef object may also contain the following Microsoft Access application–defined properties. For details on reading and setting these properties, see the individual properties and the Property object.
|
|
|
|
|
|
|
|
|
Sub TableDefX()
Dim dbsNorthwind As Database
Dim tdfNew As TableDef
Dim tdfLoop As TableDef
Dim prpLoop As Property
Set dbsNorthwind = OpenDatabase("Northwind.mdb")
' Create new TableDef object, append Field objects
' to its Fields collection, and append TableDef
' object to the TableDefs collection of the
' Database object.
Set tdfNew = dbsNorthwind.CreateTableDef("NewTableDef")
tdfNew.Fields.Append tdfNew.CreateField("Date", dbDate)
dbsNorthwind.TableDefs.Append tdfNew
With dbsNorthwind
Debug.Print .TableDefs.Count & _
" TableDefs in " & .Name
' Enumerate TableDefs collection.
For Each tdfLoop In .TableDefs
Debug.Print " " & tdfLoop.Name
Next tdfLoop
With tdfNew
Debug.Print "Properties of " & .Name
' Enumerate Properties collection of new
' TableDef object, only printing properties
' with non-empty values.
For Each prpLoop In .Properties
Debug.Print " " & prpLoop.Name & " - " & _
IIf(prpLoop = "", "[empty]", prpLoop)
Next prpLoop
End With
' Delete new TableDef since this is a
' demonstration.
.TableDefs.Delete tdfNew.Name
.Close
End With
End Sub
Example (Microsoft Access)
The following example creates a new TableDef object, defines a field within it, and appends it to the TableDefs collection of the current database:
Sub NewTable()
Dim dbs As Database, tdf As TableDef, fld As Field
' Return reference to current database.
Set dbs = CurrentDb
' Create new TableDef object.
Set tdf = dbs.CreateTableDef("Contacts")
' Create new Field object.
Set fld = tdf.CreateField("ContactName", dbText, 30)
' Append new objects.
tdf.Fields.Append fld
dbs.TableDefs.Append tdf
Set dbs = Nothing
End Sub