使用 c# 将 MS Access 表数据添加到 SQL Server 表中

Posted

技术标签:

【中文标题】使用 c# 将 MS Access 表数据添加到 SQL Server 表中【英文标题】:Add MS Access table data to SQL Server table with c# 【发布时间】:2013-04-08 15:03:45 【问题描述】:

我有一个带有 Number 表的 MS Access 文件。我还有一个带有profile 表的 SQL Server 数据库。

如何将number 表中的数据导入profile 表中?

【问题讨论】:

你想把你的 ms access 数据库转换成 sql server(mdf) db 文件吗? 不,我想将信息添加到现有表。 【参考方案1】:

会是这样的:

    const string connectionString = "YOUR ACCESS CONNECTION STRING";
    const string connectionStringDest = "YOUR SQL SERVER CONNECTION STRING";
    using (var sourceConnection =
          new OleDbConnection(connectionString))
    
        sourceConnection.Open();

        var commandSourceData = new OleDbCommand(
            "SELECT COL1, COL2 FROM TABLE_X;", sourceConnection);
        var reader =
            commandSourceData.ExecuteReader();

        using (var destinationConnection =
                   new SqlConnection(connectionStringDest))
        
            destinationConnection.Open();

            using (var bulkCopy =
                       new SqlBulkCopy(destinationConnection))
            
                bulkCopy.DestinationTableName =
                    "dbo.TABLE_DEST";

                try
                
                    bulkCopy.WriteToServer(reader);
                
                catch (Exception ex)
                
                    Console.WriteLine(ex.Message);
                
                finally
                
                    reader.Close();
                
            
        
    

【讨论】:

错误是:FROM 子句中的语法错误。这个错误黄色`var reader = commandSourceData.ExecuteReader(); 我不知道你的表结构所以我举个例子 "从 TABLE_X 中选择 COL1、COL2;" "SELECT COL1, COL2 FROM TABLE_X" 分号是 ? 请看:codeproject.com/Questions/574384/…

以上是关于使用 c# 将 MS Access 表数据添加到 SQL Server 表中的主要内容,如果未能解决你的问题,请参考以下文章

如何在 MS Access 中使用 C# 获取所有表名和列名?

C# & MS Access - SQL 用于在应用程序开始时创建表、列和添加值

如何使用 c# 将数据表值添加到 ms 访问表

使用 python 将 pandas 数据框导入 MS Access 表

尝试使用 C# 将数据插入 MS Access 数据库,但插入命令不起作用

将 DataTable 保存到 MS Access 表