0

そのため、Visual Studio WPF のユーザー インターフェイスに使用したい Excel に巨大なファイルがあります。Visual Studio に付属の SQL Server に残りのデータベースを保存しています。このデータを Excel から Visual Studio Sql Server にインポートする方法はありますか?

ご協力いただきありがとうございます。

4

2 に答える 2

0

方法:SQLServerのインポートおよびエクスポートウィザードを実行する

于 2011-02-22T00:41:10.363 に答える
-1

個人的には、Microsoft.Office.Interop.Excel 名前空間を使用して、このようなコードを記述してファイルを CSV として保存し、BULK COPY コマンドを使用して SQL にダンプするか、Microsoft c#.net で使用できます。

これを行うには、SqlBulkCopy オブジェクトを使用します。

したがって、CSV を 1 行ずつ読み取り、DataTable に書き出します。次に、以下を使用して SQL に書き込みます。

VB.NET での bulkCopy オブジェクトの例 (申し訳ありませんが、c# ではなく vb.net で使用しています)

 Public Function InsertDataToDatabase(ByVal _strDestinationTableName As String, ByRef _dtData As DataTable, ByRef _sqlConnection As SqlConnection) As Boolean
        Try

            RaiseEvent BulkCopyStartEvent(Me, _dtData.Rows.Count())

            OpenConnection()

            sBulkCopy = New SqlBulkCopy(DatabaseConnection)

            'Clear out all data in the TmpTable

            Dim sqlComm As New SqlCommand(String.Format("TRUNCATE TABLE {0}", _strDestinationTableName), DatabaseConnection)
            sqlComm.ExecuteNonQuery()

            With sBulkCopy

                sBulkCopy.DestinationTableName = _strDestinationTableName
                sBulkCopy.NotifyAfter = _dtData.Rows.Count / 100 ' Notify after every 1%
                sBulkCopy.WriteToServer(_dtData)
                sBulkCopy.Close()
            End With

            RaiseEvent BulkCopyCompleteEvent(Me, _dtData.Rows.Count(), arrExceptionStringList.Count())

            Return True

        Catch ex As BulkCopyUtilityErrorException
            RaiseEvent BulkCopyErrorEvent(Me, ex)
        Finally
            CloseConnection()
        End Try
    End Function
于 2011-02-22T00:57:46.950 に答える