1

Я работаю в MS SQL Server Management Studio 2014. Используя связанный сервер, я могу связать файл Excel как связанный сервер. Я знаю, как связать. Но я хочу знать, как я могу связать 5 файлов Excel на связанном сервере, или мне нужно создать отдельный связанный сервер для каждого файла Excel?

Заранее спасибо,

1 ответ1

2

Вы должны настроить его, используя либо поставщика OLEDB, либо поставщика драйверов ODBC, и создать подключение с помощью инструмента администратора ODBC на сервере к файлу Excel.

Если вы предполагаете читать из файла Excel на регулярной основе, то этот метод очень полезен.

Также вы можете использовать SMO Объекты управления SQL Server для настройки источника данных Excel в качестве связанного сервера с использованием кода VBA.

Imports Microsoft.SqlServer.Management.Smo
Imports Microsoft.SqlServer.Management.Common

Public Class Form1

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Dim s As Server
        Dim conn As ServerConnection
        Dim ls As LinkedServer

        conn = New ServerConnection("ServerName\InstanceName", "YourUesrName", "YourPassword")
        s = New Server(conn)
        Try
            ls = New LinkedServer(s, "XLTEST_DMO")
            With ls
                .ProviderName = "Microsoft.Jet.OLEDB.4.0"
                .ProductName = "Excel"
                .DataSource = "c:\book1.xlsx"
                .ProviderString = "Excel 9.0"
            End With
            ls.Create()
            MessageBox.Show("New link has been created.")
        Catch ex As SmoException
            MessageBox.Show(ex.Message)
        Finally
            ls = Nothing
            If s.ConnectionContext.IsOpen = True Then
                s.ConnectionContext.Disconnect()
            End If
        End Try

    End Sub
End Class

Я надеюсь, что это поможет вам.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .