2

次のエラーが表示されます。

system.data.sqlclient.sqlexception タイムアウトの期限が切れました。操作が完了する前にタイムアウト時間が経過したか、サーバーが応答していません。

コード:

    Dim ExcelConnection As New System.Data.OleDb.OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Users\z.fontanilla\Documents\etl.xlsx;Extended Properties=""Excel 12.0 Xml;HDR=Yes""")

    ExcelConnection.Open()

    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=cyayay\sqlexpress;Initial Catalog=reportingDB;Integrated Security=True"
    SQLconn.ConnectionString = ConnString
    SQLconn.Open()


    Using bulkCopy As SqlBulkCopy = New SqlBulkCopy(SQLconn)
        bulkCopy.DestinationTableName = "tFalse"

        Try
            objDR = objCmdSelect.ExecuteReader
            bulkCopy.WriteToServer(objDR)
            objDR.Close()
            SQLconn.Close()

        Catch ex As Exception
            MsgBox(ex.ToString)
        End Try
    End Using
    ExcelConnection.Close()
4

1 に答える 1

1

objCmdSelect オブジェクトの CommandTimeout プロパティを 700 (またはその他) の値に設定してみてください。

于 2013-10-04T16:23:14.550 に答える