VB.NET将EXCEL中的数据导入到SQL SERVER
2010-12-09 21:24
417 查看
Dim sConnectionString As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=E:/book1.xls; Extended Properties=Excel 8.0;"
Try
Dim oleDbConnection As OleDbConnection = New OleDbConnection(sConnectionString)
oleDbConnection.Open()
'获取excel表
Dim dataTable As DataTable = oleDbConnection.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, Nothing)
'获取sheet名,其中(0)(1)...(N): 按名称排列的表单元素
Dim tableName As String = dataTable.Rows(0)(2).ToString().Trim()
tableName = "[" & tableName.Replace(" ' ", " ") & "]"
'利用SQL语句从Excel文件里获取数据
Dim query As String = "SELECT c1,c2,c3 FROM " & tableName
Dim dataset As DataSet = New DataSet()
Dim oleAdapter As OleDbDataAdapter = New OleDbDataAdapter(query, sConnectionString)
oleAdapter.Fill(dataset, "Rwb")
'可读取EXCEL中的记录数
MessageBox.Show(dataset.Tables(0).Rows.Count)
'SQL数据库连接
Dim sqlcon As SqlClient.SqlConnection = New SqlClient.SqlConnection("Data Source=./sqlexpress;Initial Catalog=test;User ID=sa;Password=123")
sqlcon.Open()
'从excel文件获得数据后,插入记录到SQL Server的数据表
Dim dataTable1 As DataTable = New DataTable()
Dim sqlDA1 As SqlClient.SqlDataAdapter = New SqlClient.SqlDataAdapter("SELECT c1,c2,c3 from BOOK1 ", sqlcon)
Dim sqlCB1 As SqlClient.SqlCommandBuilder = New SqlClient.SqlCommandBuilder(sqlDA1)
sqlDA1.Fill(dataTable1)
Dim dataRow11 As DataRow
For Each dataRow11 In dataset.Tables("Rwb").Rows
'sql里数据dataRow1
Dim dataRow1 As DataRow = dataTable1.NewRow()
dataRow1("C1") = dataRow11("C1")
dataRow1("C2") = dataRow11("C2")
dataRow1("C3") = dataRow11("C3")
dataTable1.Rows.Add(dataRow1)
Next
MessageBox.Show("新插入 " & dataTable1.Rows.Count.ToString() & " 条记录 ")
sqlDA1.Update(dataTable1)
oleDbConnection.Close()
Catch ex As Exception
Console.WriteLine(ex.ToString())
End Try
Try
Dim oleDbConnection As OleDbConnection = New OleDbConnection(sConnectionString)
oleDbConnection.Open()
'获取excel表
Dim dataTable As DataTable = oleDbConnection.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, Nothing)
'获取sheet名,其中(0)(1)...(N): 按名称排列的表单元素
Dim tableName As String = dataTable.Rows(0)(2).ToString().Trim()
tableName = "[" & tableName.Replace(" ' ", " ") & "]"
'利用SQL语句从Excel文件里获取数据
Dim query As String = "SELECT c1,c2,c3 FROM " & tableName
Dim dataset As DataSet = New DataSet()
Dim oleAdapter As OleDbDataAdapter = New OleDbDataAdapter(query, sConnectionString)
oleAdapter.Fill(dataset, "Rwb")
'可读取EXCEL中的记录数
MessageBox.Show(dataset.Tables(0).Rows.Count)
'SQL数据库连接
Dim sqlcon As SqlClient.SqlConnection = New SqlClient.SqlConnection("Data Source=./sqlexpress;Initial Catalog=test;User ID=sa;Password=123")
sqlcon.Open()
'从excel文件获得数据后,插入记录到SQL Server的数据表
Dim dataTable1 As DataTable = New DataTable()
Dim sqlDA1 As SqlClient.SqlDataAdapter = New SqlClient.SqlDataAdapter("SELECT c1,c2,c3 from BOOK1 ", sqlcon)
Dim sqlCB1 As SqlClient.SqlCommandBuilder = New SqlClient.SqlCommandBuilder(sqlDA1)
sqlDA1.Fill(dataTable1)
Dim dataRow11 As DataRow
For Each dataRow11 In dataset.Tables("Rwb").Rows
'sql里数据dataRow1
Dim dataRow1 As DataRow = dataTable1.NewRow()
dataRow1("C1") = dataRow11("C1")
dataRow1("C2") = dataRow11("C2")
dataRow1("C3") = dataRow11("C3")
dataTable1.Rows.Add(dataRow1)
Next
MessageBox.Show("新插入 " & dataTable1.Rows.Count.ToString() & " 条记录 ")
sqlDA1.Update(dataTable1)
oleDbConnection.Close()
Catch ex As Exception
Console.WriteLine(ex.ToString())
End Try
相关文章推荐
- asp.net实现excel数据到sql server的导入
- VB.NET DataGridView中的数据导入到Excel
- vb.net excel数据导入datagridview显示
- Asp.net中关于excel文件批量导入SQL Server数据表
- [VB.NET]救助:将datagrid中的数据导入到excel中时遇到错误??
- vb.net 将DataGridView数据导入到Excel的方式
- Asp.net中Excel数据导入到SQL Server
- ASP.NET中如何把EXCEL中数据导入到SQL SERVER
- ASP.NET Excel数据导入SQL Server
- VB .NET把Excel中的数据导入SQL SERVER数据库
- VB.NET、EXCEL调用SQL Server带参数的存储过程并返回数据集
- VB.Net机房收费系统(三层)——将datagirdview 控件数据导入Excel
- Excel数据如何导入SQL Server中
- 将Excel中的数据导入到SQL Server 2000数据库中
- Excel 数据导入到 Access、Sql Server 中示例代码
- SQL SERVER使用OpenRowset,、OpenDataSource函数导入、导出数据到Excel 的几种方法(整理)
- VB.net-VS2010导出datagridview数据到EXCEL,以时间为文件名
- asp.net 将EXCEL表格数据导入到SQL Server数据库
- [导入][转]精妙的SQL和SQL SERVER 与ACCESS、EXCEL的数据导入导出转换
- 精妙的SQL和SQL SERVER 与ACCESS、EXCEL的数据导入导出转换