 |
|
ติดปัญหาการ เอาไฟล์ excel ไป import ใส่ Sql server ครับ |
|
 |
|
|
 |
 |
|

เอามาจากตัวอย่างครับ แต่ยัง เออเร่ออยู่ ไม่ทราบว่าผมลืมอะไรไปหรือเปล่า
Code (VB.NET)
Imports System.Data.OleDb
Imports System.Data.SqlClient
Public Class Form3
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim objConn As New OleDbConnection
Dim dtAdapter As OleDbDataAdapter
Dim dt As New DataTable
Dim strConnString As String
strConnString = "Provider=Microsoft.Jet.OLEDB.4.0; " & _
"Data Source=" & Server.MapPath("D:\Project VB.net\DB\BPlusDATA.xls") & ";Extended Properties=Excel 8.0;"
objConn = New OleDbConnection(strConnString)
objConn.Open()
Dim strSQL As String
strSQL = "SELECT * FROM [Sheet1$]"
dtAdapter = New OleDbDataAdapter(strSQL, objConn)
dtAdapter.Fill(dt)
'*** BindData To DataGrid ***'
Me.DataGridView1.DataSource = dt
Me.DataGridView1.DataBind()
dtAdapter = Nothing
objConn.Close()
objConn = Nothing
Dim connetionString As String
Dim connection As SqlConnection
Dim adapter As New SqlDataAdapter
Dim i As Integer
Dim sql As String
connetionString = "Server=IT-04S\SQLEXPRESS;UID=TestVB;PASSWORD=11111;database=TestVB;Max Pool Size=400;Connect Timeout=600;"
connection = New SqlConnection(connetionString)
connection.Open()
For i = 0 To dt.Rows.Count - 1
sql = "insert into product (Product_id,Product_name,Product_price) values('" & dt.Rows(i)(0) & "','" & dt.Rows(i)(1) & "','" & dt.Rows(i)(2) & "')"
adapter.InsertCommand = New SqlCommand(sql, connection)
adapter.InsertCommand.ExecuteNonQuery()
Next
connection.Close()
End Sub
End Class
Tag : .NET, Ms SQL Server 2008, Excel (Excel.Application), VB.NET, VS 2010 (.NET 4.x)
|
|
 |
 |
 |
 |
Date :
2014-01-03 11:44:41 |
By :
Chunate |
View :
1242 |
Reply :
5 |
|
 |
 |
 |
 |
|
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
เอ่อ....
ที่ก็อปไปมันของ asp.net นะ
ใน win form มันไม่มี server.mappath กับ .databind() หรอก
|
 |
 |
 |
 |
Date :
2014-01-03 14:52:14 |
By :
ห้ามตอบเกินวันละ 2 กระทู้ |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
แล้ว ต้องแก้เป็น ยังไง ครับ แนะนำที
|
 |
 |
 |
 |
Date :
2014-01-03 16:04:47 |
By :
Chunate |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
Code (VB.NET)
strConnString = "Provider=Microsoft.Jet.OLEDB.4.0; " & _
12.
"Data Source="D:\Project VB.net\DB\BPlusDATA.xls";Extended Properties=Excel 8.0;"
|
 |
 |
 |
 |
Date :
2014-01-04 08:14:26 |
By :
mr.win |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ทำได้แล้ว ครับ การ เอาข้อมูลในไฟล์ excel ไปเก็บไว้ใน sql server
แปะไว้เผื่อมีคนติดปัญหาเหมือนผม
Code (VB.NET)
Private Sub import()
Dim OpenFile As String
Dim i As Integer
OpenFile = "D:\Project VB.net\DB\BPlusDATA.xlsx"
'*** Create Excel.Application ***'
Dim xlApp As New excel.Application
Dim xlBook As excel.Workbook
Dim xlSheet1 As excel.Worksheet
xlBook = xlApp.Workbooks.Open(OpenFile)
xlBook.Application.Visible = False
xlSheet1 = xlBook.Worksheets(1)
'*** Create DataTable ***'
Dim dt As New System.Data.DataTable
Dim dr As System.Data.DataRow
'*** Column ***'
dt.Columns.Add("DI_DATE")
dt.Columns.Add("DI_REF")
dt.Columns.Add("TRD_NM_PRC")
dt.Columns.Add("TRD_QTY")
dt.Columns.Add("TRD_G_SELL")
dt.Columns.Add("TRD_B_SELL")
dt.Columns.Add("TRD_TDSC_KEYINV")
dt.Columns.Add("TRD_B_VAT")
dt.Columns.Add("DT_PROPERTIES")
dt.Columns.Add("SLMN_CODE")
dt.Columns.Add("SLMN_NAME")
i = 2
Do While Not Trim(xlSheet1.Cells.Item(i, 1).Value) = ""
'*** Rows ***'
dr = dt.NewRow
dr("DI_DATE") = xlSheet1.Cells.Item(i, 1).Value
dr("DI_REF") = xlSheet1.Cells.Item(i, 2).Value
dr("TRD_NM_PRC") = xlSheet1.Cells.Item(i, 3).Value
dr("TRD_QTY") = xlSheet1.Cells.Item(i, 4).Value
dr("TRD_G_SELL") = xlSheet1.Cells.Item(i, 5).Value
dr("TRD_B_SELL") = xlSheet1.Cells.Item(i, 6).Value
dr("TRD_TDSC_KEYINV") = xlSheet1.Cells.Item(i, 7).Value
dr("TRD_B_VAT") = xlSheet1.Cells.Item(i, 8).Value
dr("DT_PROPERTIES") = xlSheet1.Cells.Item(i, 9).Value
dr("SLMN_CODE") = xlSheet1.Cells.Item(i, 10).Value
dr("SLMN_NAME") = xlSheet1.Cells.Item(i, 11).Value
dt.Rows.Add(dr)
i = i + 1
Loop
'Me.DataGridView1.DataSource = dt
xlApp.Application.Quit()
xlApp.Quit()
xlSheet1 = Nothing
xlBook = Nothing
xlApp = Nothing
Dim connetionString As String
Dim connection As SqlConnection
Dim adapter As New SqlDataAdapter
Dim sql As String
connetionString = "Server=IT-04S\SQLEXPRESS;UID=TestVB;PASSWORD=11111;database=TestVB;Max Pool Size=400;Connect Timeout=600;"
connection = New SqlConnection(connetionString)
connection.Open()
For i = 0 To dt.Rows.Count - 1
sql = "insert into BplusData (DI_DATE,DI_REF,TRD_NM_PRC,TRD_QTY,TRD_G_SELL,TRD_B_SELL,TRD_TDSC_KEYINV,TRD_B_VAT,DT_PROPERTIES,SLMN_CODE,SLMN_NAME) values('" & dt.Rows(i)(0) & "','" & dt.Rows(i)(1) & "','" & dt.Rows(i)(2) & "','" & dt.Rows(i)(3) & "','" & dt.Rows(i)(4) & "','" & dt.Rows(i)(5) & "','" & dt.Rows(i)(6) & "','" & dt.Rows(i)(7) & "','" & dt.Rows(i)(8) & "','" & dt.Rows(i)(9) & "','" & dt.Rows(i)(10) & "')"
adapter.InsertCommand = New SqlCommand(sql, connection)
adapter.InsertCommand.ExecuteNonQuery()
Next
connection.Close()
End Sub
|
 |
 |
 |
 |
Date :
2014-01-04 08:21:11 |
By :
Chunate |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
รบกวนอธิบายโค้ดให้ทีได้ไหมค่ะ ไม่ค่อยเข้าใจเลย
|
 |
 |
 |
 |
Date :
2015-02-01 00:09:29 |
By :
Preeyapan |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
|
|