如何查看 Microsoft Access 2013表的元数据(数据字典)?
答案 0 :(得分:5)
在Access 2007及更高版本(2007年,2010年,2013年)中,“数据库文档管理器”位于“分析”组中的“数据库工具”选项卡下。
答案 1 :(得分:4)
如果要检索访问数据库元数据,这可能会有所帮助:
每个microsoft访问数据库都包含一个名为MSysObjects
的系统表。此表包含此数据库元数据。您可以使用创建日期和上次更新日期获取所有对象。
您可以使用以下查询列出Access数据库中的所有对象:
SELECT Name, DateCreate, DateUpdate,
iif(LEFT(Name, 4) = 'MSys','System Table',
iif(type = 2,'System Object',
iif(type = 3,'System Object',
iif(type = 8,'System Object',
iif(type = 4,'Linked Table (ODBC)',
iif(type = 1,'Table',
iif(type = 6, 'Linked Table (MsAccess/MsExcel)',
iif(type = 5,'Query',
iif(type = -32768,'Form',
iif(type = -32764,'Report',
iif(type=-32766,'Macro',
iif(type = -32761,'Module',
iif(type = -32756,'Page',
iif(type = -32758,'User','Unknown')))))))))))))) as ObjectType
FROM MSysObjects WHERE LEFT(Name, 1) <> '~'
如果您不想显示系统对象,可以将这些条件添加到where子句中:
AND LEFT(Name, 4) <> 'MSys' AND Type IN (1, 5, 4, 6, -32768, -32764, -32766, -32761,-32756,-32758)
我还创建了一个从访问数据库中检索数据的应用程序,我为它创建了一个新的Git-repository
答案 2 :(得分:2)
使用VBA,DAO.TableDef
对象可以帮助您:
dim db as DAO.Database, tbl as DAO.TableDef
dim f as DAO.Field
set db = currentdb() ' Connect to current database
' Loop through each table in the database
for each tbl in db.tableDefs
debug.print "Table name: ", tbl.Name
' Loop throuth each field in the table
for each f in tbl.Fields
debug.print "Field: ", f.Name
next f
next tbl
这已经过度简化,但您可以获得表格及其字段的所有属性。
检查: