Как импортировать самый последний файл excel в SQL db
Всем привет,
Я работаю над этим VB.net настольное приложение версии 2010 года. Я хочу загрузить лист Excel в базу данных (sql server), но не отображать данные в Gridview, а только самый последний файл excel. Имя файла Myexcel было установлено в качестве последней даты и времени. Структура такова". filename_DD-MM-YYYY_hh-mm-ss.xls"
Пожалуйста, дайте мне решение, если у вас есть.
заранее спасибо
Что я уже пробовал:
Function NewestFile(myPath, FileSpec) Dim Filenm As String Dim RecentFile As String Dim LatestDate As Date Filenm = Dir(myPath & "File_Flt" & Format(Now(), "dd-MM-yyyy_hh-mm-ss") & ".xls", 0) If Filenm <> "" Then RecentFile = Filenm LatestDate = FileDateTime(myPath & Filenm) Do While Filenm <> "" 'LND = FileDateTime(myPath & Filenm) If FileDateTime(myPath & Filenm) > LatestDate Then RecentFile = Filenm LatestDate = FileDateTime(myPath & Filenm) End If Filenm = Dir() Loop End If NewestFile = RecentFile End Function Private Sub Label1_Click() Dim filename As String Dim myPath As String myPath = "D:\Data\Folders\" filename = NewestFile(myPath, "*.xls") Dim ExcelConnection As New System.Data.OleDb.OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + filename + " ;Extended Properties=""Excel 12.0 Xml;HDR=Yes""") ExcelConnection.Open() Dim expr1 As Object Dim expr As String = "SELECT * FROM [Sheet1$]" Dim objCmdSelect As OleDbCommand = New OleDbCommand(expr, ExcelConnection) Dim objDR As OleDbDataReader Dim SQLconn As New SqlConnection() Dim ConnString As String = "Data Source=sqldb;Initial Catalog=StgSQL;Integrated Security=True" SQLconn.ConnectionString = ConnString SQLconn.Open() Using bulkCopy As SqlBulkCopy = New SqlBulkCopy(SQLconn) bulkCopy.DestinationTableName = "ar_inv" Try objDR = objCmdSelect.ExecuteReader bulkCopy.WriteToServer(objDR) objDR.Close() SQLconn.Close() MsgBox("Data's are imported to SQL Succesfully", MsgBoxStyle.Information) Catch ex As Exception MsgBox(ex.ToString) End Try End Using End Sub
Richard MacCutchan
В чем проблема с вашим кодом?
CHill60
Вы сказали, что вы хотите сделать, но не сказали нам, какие проблемы у вас возникли