【问题标题】:Microsoft Access metadata?Microsoft Access 元数据?
【发布时间】:2016-10-20 21:22:18
【问题描述】:

我想查询一些 Microsoft Access 数据库(一些 2007 年和一些 2010 年)的元数据,以获取给定表的列和数据类型。我可以通过查询 ALL_TAB_COLUMNS 在 Oracle 中做到这一点。我可以在 SQL Server 中通过查询 sys.objects、sys.columns 和 sys.types 来做到这一点。像这样的...

USE AdventureWorks2008R2

SELECT
    b.name,
    b.column_id,
    c.name,
    b.max_length,
    b.precision,
    b.scale
FROM
    sys.objects a
INNER JOIN sys.columns b ON a.object_id = b.object_id
INNER JOIN sys.types c ON b.system_type_id = c.user_type_id
WHERE
    a.name = 'Person'
ORDER BY
    b.column_id

捕获此元数据的目的是在 Biml 中使用它来创建 SSIS 包工厂。有没有办法系统地获取 Microsoft Access 表的列数据类型?

谢谢

【问题讨论】:

    标签: ms-access


    【解决方案1】:

    很遗憾,没有可以返回列和类型的 SQL 查询。

    上述使用VBA代码的答案是一种方式,另一种是使用数据库记录器。它会生成这样的报告:

    【讨论】:

    【解决方案2】:

    检查表格时使用字段对象。我只使用了 fld.name,其中 fld 是一个字段对象。

    我只是给了别人代码来查找通过每一列的名字。您可能可以使用其他属性来代替“名称”。 (哦,插入您的 Addnew,更新记录集。我在平板电脑上打字,很懒

               for each fld in rst.fields
                       NewRst!variable = fld.name
               next fld
    

    【讨论】:

      猜你喜欢
      • 2012-04-29
      • 2014-08-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-07-08
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多