以下是使用 C# 将 Excel 数据导入 SQL Server 的代码示例:

using System.Data;
using System.Data.SqlClient;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using ExcelDataReader;

// 定义要导入的 Excel 文件路径和表名
string filePath = @'C:\data\sample.xlsx';
string tableName = 'SampleTable';

// 使用 ExcelDataReader 读取 Excel 文件中的数据
using (var stream = File.Open(filePath, FileMode.Open, FileAccess.Read))
{
    using (var reader = ExcelReaderFactory.CreateReader(stream))
    {
        var result = reader.AsDataSet();
        var table = result.Tables[0];

        // 将 Excel 表格中的数据转换为 SQL 语句
        var columns = string.Join(', ', table.Columns.Cast<DataColumn>().Select(c => $'[{c.ColumnName}]'));
        var values = new StringBuilder();
        foreach (DataRow row in table.Rows)
        {
            var rowValues = string.Join(', ', row.ItemArray.Select(v => $''{v}''));
            values.Append($'({rowValues}),');
        }
        values.Remove(values.Length - 1, 1);

        // 使用 SqlConnection 和 SqlCommand 将数据插入到 SQL Server 中
        var connectionString = @'Data Source=.\SQLEXPRESS;Initial Catalog=SampleDB;Integrated Security=True;';
        using (var connection = new SqlConnection(connectionString))
        {
            connection.Open();
            var sql = $'INSERT INTO {tableName} ({columns}) VALUES {values}';
            using (var command = new SqlCommand(sql, connection))
            {
                command.ExecuteNonQuery();
            }
        }
    }
}

请注意,此代码示例仅适用于将 Excel 文件中的数据导入到 SQL Server 表中。如果 Excel 文件中包含复杂的结构或需要进行数据转换或验证,则需要添加更多的代码逻辑。

C# Excel 数据导入 SQL Server 代码示例

原文地址: https://www.cveoy.top/t/topic/nEVm 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录