Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
用于将MS Access数据库转换为SQL脚本的工具_Sql_Ms Access - Fatal编程技术网

用于将MS Access数据库转换为SQL脚本的工具

用于将MS Access数据库转换为SQL脚本的工具,sql,ms-access,Sql,Ms Access,我们的软件包使用MS Access数据库,这个数据库已经修改了很多次,所以,只看到文件有点复杂(表之间的关系是小地狱),无论如何 是否有一种方法或程序将此mdb文件转换为SQL脚本(目前任何类型的SQL脚本都可以) 谢谢,你看过报纸了吗 如果将副本转换为SQL Server,您可能会对数据库有更好的感觉 提供了将数据库设计及其“数据”转储到SQL中的选项。我发现它在过去非常方便,可以将我的测试数据库备份到源代码控制 下载并安装亚音速2.1版 您可以完全从命令行运行生成脚本,但我个人认为使用App

我们的软件包使用MS Access数据库,这个数据库已经修改了很多次,所以,只看到文件有点复杂(表之间的关系是小地狱),无论如何

是否有一种方法或程序将此mdb文件转换为SQL脚本(目前任何类型的SQL脚本都可以)

谢谢,

你看过报纸了吗

如果将副本转换为SQL Server,您可能会对数据库有更好的感觉

提供了将数据库设计及其“数据”转储到SQL中的选项。我发现它在过去非常方便,可以将我的测试数据库备份到源代码控制

下载并安装亚音速2.1版

您可以完全从命令行运行生成脚本,但我个人认为使用App.Config文件更容易,可以更轻松地处理配置选项。设置.Net项目,并将App.Config文件设置为适当的设置。有关App.Config的文档可在以下位置找到:

以下是我的一个老项目的样本:


<?xml version="1.0" encoding="utf-8" \>
<configuration>
    <configSections>
        <section name="SubSonicService" 
            type="SubSonic.SubSonicSection, SubSonic" 
            requirePermission="false"/>
    </configSections>

    <connectionStrings>
        <clear />
        <add name="subTest" 
            connectionString="Data Source=MYCOMP\MICROSOFTSMLBIZ\,56183;Database=someDB;User ID=someId;Password=somePasswrd!"
            providerName="System.Data.SqlClient" />
    </connectionStrings>

    <SubSonicService defaultProvider="subTest">
        <providers>
            <clear/>
            <add name="subTest" 
                type="SubSonic.sqlDataProvider, SubSonic" 
                connectionStringName="subTest"
                generatedNamespace="TerraCognita.Project.Services.DAL"
                includeTableList="^Bug$, ^Person$, ^Groups$, ^Project$, ^TimeInterval$"/>
        </providers>
    </SubSonicService>
</configuration>

使用适合您的数据库的连接字符串,以及(我相信)适合Access数据库的提供程序。(您也可以在命令行中指定大多数参数,但我个人认为使用配置文件更简单。)

打开命令提示符,当前文件夹应为包含App.Config的文件夹。以下是您需要的命令:

[安装文件夹]\subcander\sonic.exe[命令]/out[输出文件名]


其中[Command]可以是scriptschema或scriptdata。(还有其他命令,但这是您感兴趣的两个。帮助也是一个选项。

您可以查看一下

只要确保您仔细检查了索引、约束、默认值等。我看到了SQL Server迁移工具的一些奇怪行为。它非常适合移动数据,而对于其他元信息则不太适合。