c# Oracle原生sql快速导出百万级数据到excel
时间: 2023-12-21 10:15:02 浏览: 153
你可以使用 C# 中的 OleDb 和 Excel 库来快速导出百万级数据到 Excel 中。
以下是一个简单的示例代码:
```csharp
using System.Data.OleDb;
using System.Data;
using System.IO;
public void ExportToExcel(string connectionString, string query, string filePath)
{
// 创建连接
using (OleDbConnection conn = new OleDbConnection(connectionString))
{
// 打开连接
conn.Open();
// 创建命令
using (OleDbCommand cmd = new OleDbCommand(query, conn))
{
// 创建适配器
using (OleDbDataAdapter adapter = new OleDbDataAdapter(cmd))
{
// 创建数据集
using (DataSet ds = new DataSet())
{
// 填充数据
adapter.Fill(ds);
// 创建 Excel 文件
using (ExcelPackage package = new ExcelPackage(new FileInfo(filePath)))
{
// 创建工作表
ExcelWorksheet worksheet = package.Workbook.Worksheets.Add("Sheet1");
// 将数据写入工作表
worksheet.Cells["A1"].LoadFromDataTable(ds.Tables[0], true);
// 保存文件
package.Save();
}
}
}
}
}
}
```
其中,`connectionString` 是连接字符串,`query` 是查询语句,`filePath` 是导出的 Excel 文件路径。
你可以将查询语句修改为你需要导出的数据的查询语句,然后调用该方法即可快速导出数据到 Excel 中。注意,在导出百万级数据时,可能需要进行分页查询,以避免内存溢出等问题。
阅读全文