【问题标题】:How to copy .mdb file to .mdf file如何将 .mdb 文件复制到 .mdf 文件
【发布时间】:2011-07-15 12:07:10
【问题描述】:

我想将 ms access 数据库(.mdb) 复制到 sql server 数据库(.mdf)。我是用 sql server 导入和导出数据服务做到的。但我希望它定期或特定时间复制数据。有没有可能。我试图创建一个批处理文件

复制 /y "E:\Dinesh Work\for-reports.mdb" "C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\for-reports.mdf"

但它给出了以下错误:

该进程无法访问该文件,因为它正被另一个进程使用。

我的 sql server 数据库中有与 msaccess 数据库相同的表。有没有批处理文件或其他东西的解决方案。

任何建议将不胜感激。
提前致谢。

【问题讨论】:

    标签: sql-server ms-access batch-file


    【解决方案1】:

    这听起来像是您想使用 Access 数据库来编辑 SQL Server 数据库中的数据。
    对吗?

    如果是,您真的需要复制数据吗?
    您还可以从 Access 链接到 SQL Server 表。

    这样,您在 Access 中的表看起来像普通的本地 Access 表,但它们实际上只是指向 SQL Server 表的链接。您可以在 Access 中编辑这些表中的数据,但实际上是直接写入 SQL Server 数据库。

    以下是一些如何设置的示例:
    Link to SQL Server data
    Access to SQL Server: Linking Tables

    【讨论】:

      【解决方案2】:

      MDB 和 MDF 文件是完全不同的类型。你不能只是复制它们。

      如果您熟悉该术语,您可以尝试设置一个 SSIS 任务来执行常规数据传输 - 类似于 ETL。

      编辑:您看到文件锁定错误的原因是 SQL Server 在数据库运行时维护 MDF 文件上的锁定。为了移动或复制它,您需要使该特定数据库脱机。

      【讨论】:

        【解决方案3】:

        正如@Yuck 所说,您不能只是复制文件并重命名它,您需要 ETL 之类的东西,或者只是一个导出数据的工具。

        我做了 xportdsl 从 h2database 复制到 mssql 和 mssql 到 oracle http://code.google.com/p/xportdsl/

        我使用了 gorm 和一个 hacky 的 dsl,它仍然可以工作

        您可以编写一个 bat 文件来执行类似 java -jar xportdsl.jar test001.txt 的内容

        【讨论】:

          猜你喜欢
          • 2016-07-11
          • 2013-10-16
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多