Aracılığıyla paylaş


opendatasource (Transact-sql)

Geçici bağlantı bilgilerini bir four-part nesne adı bir parçası olarak, bir bağlantılı sunucu adı kullanarak olmadan sağlar.

Konu bağlantısı simgesi Transact-SQL Sözdizim Kuralları

Sözdizimi

OPENDATASOURCE ( provider_name, init_string )

Bağımsız değişkenler

  • provider_name
    Adı, veri kaynağına erişmek için kullanılan ole db sağlayıcısı ProgID kaydedilir. provider_nameolan bir charveri türü, varsayılan değer yoktur.

  • init_string
    Bağlantı dizesi geçirilir IDataInitializehedef sağlayıcı arabirimi. Sağlayıcı dizesi sözdizimi gibi noktalı virgüllerle ayrılmış anahtar-değer çiftleri dayanır: 'keyword1=value;keyword2=value'.

    Sağlayıcı üzerinde desteklenen belirli anahtar-değer çiftleri için bkz MicrosoftData Access sdk. Bu belge temel sözdizimi tanımlar. Aşağıdaki tablo listeleri en sık kullanılan anahtar kelimeler init_stringdeğişkeni.

    Anahtar Sözcük

    ole db özelliği

    Geçerli değerler ve açıklamalar

    Veri Kaynağı

    DBPROP_INIT_DATASOURCE

    Bağlanmak için veri kaynağı adı. Farklı sağlayıcıların bu farklı şekillerde yorumlamak. İçin SQL Serveryerel istemci ole db sağlayıcısı, bu sunucunun adını gösterir. Jet ole db sağlayıcı, bu .mdb dosyası veya .xls dosyasının tam yolunu gösterir.

    Konum

    DBPROP_INIT_LOCATION

    Bağlanılacak veritabanının konumu.

    Genişletilmiş Özellikler

    DBPROP_INIT_PROVIDERSTRING

    Sağlayıcıya özgü bağlantı dizesi.

    Timeout Bağlan

    DBPROP_INIT_TIMEOUT

    Sonra bağlantı deneyin başarısız zaman aşımı değeri.

    Kullanıcı Kimliği

    DBPROP_AUTH_USERID

    Bağlantı için kullanılan kullanıcı kimliği.

    Parola

    DBPROP_AUTH_PASSWORD

    Bağlantı için kullanılacak parola.

    Katalog

    DBPROP_INIT_CATALOG

    Veri kaynağına bağlanılırken varsayılan katalog veya ilk adı.

    Tümleşik güvenlik

    DBPROP_AUTH_INTEGRATED

    Windows kimlik doğrulaması belirtmek için SSPI,

Açıklamalar

opendatasource uzak veri erişimi için kullanılabilir ole db yalnızca veri kaynakları DisallowAdhocAccesskayıt seçeneği açıkça belirtilen sağlayıcı için 0 olarak ayarlanır ve Ad Hoc Distributed QueriesGelişmiş yapılandırma seçeneği etkinleştirilir. Bu seçenekler ayarlanmadığında, varsayılan davranış ad hoc erişime izin vermez.

opendatasource işlevi-ebilmek var olmak kullanılmış aynı Transact-SQLsözdizimi Mekanlar gibi bir bağlantılı sunucu adı. Bu nedenle, opendatasource select, INSERT, update veya delete deyimi içinde bir tablo veya Görünüm adı veya uzak bir saklı yordam execute deyimi başvuran four-part adı ilk bölümü olarak kullanılabilir. Uzak saklı yordamlar yürütürken, opendatasource başka bir örneğine başvurmalıdır SQL Server. opendatasource bağımsız değişkenleri kabul etmez.

openrowset işlevi, opendatasource yalnızca ole db veri kaynakları, seyrek erişilen başvuru. Bağlantılı bir sunucu için daha--dan birkaç kez erişilen herhangi bir veri kaynakları tanımlayın. Ne opendatasource veya openrowset bağlantılı sunucu tanımlarını, güvenlik yönetimi ve Katalog bilgi sorgulama yeteneği gibi tüm işlevselliği sağlar. Her zaman bu opendatasource denir parolalar dahil olmak üzere tüm bağlantı bilgilerini, sağlanmalıdır.

Önemli notÖnemli

Windows kimlik doğrulaması çok daha güvenli SQL Serverkimlik. Mümkün olduğunda Windows kimlik doğrulaması kullanmanız gerekir. Bağlantı dizesinde açık parolalarla opendatasource kullanılmamalıdır.

Bağlantılı sunucular oluştururken her sağlayıcı bağlantısı gereksinimleri Bu parametreler için gereksinimleri benzer. Birçok ortak sağlayıcıları ayrıntıları'nda listelenen sp_addlinkedserver (Transact-sql).

FROM yan tümcesinde OPENDATASOURCE, OPENQUERY veya OPENROWSET deyimine yapılan tüm çağrılar, ayrı ayrı ve her iki çağrıya da aynı değişkenler sağlansa da güncelleştirmenin hedefi olarak bu işlevlere yapılan tüm çağrılardan bağımsız olarak değerlendirilir. Özellikle, bu çağrılardan birinin sonuçlarına uygulanan filtreleme veya birleştirme koşullarının diğeri üzerinde hiçbir etkisi yoktur.

İzinler

Herhangi bir kullanıcı, opendatasource yürütebilirsiniz. Uzak sunucuya bağlanmak için kullanılan izinleri bağlantı dizesi belirlenir.

Örnekler

Aşağıdaki örnek, bir anlık bağlantı oluşturur Payrollörneğini SQL Serversunucuda London, sorgular AdventureWorks2012.HumanResources.Employeetablosu. (Kullanma SQLNCLI ve SQL Serveren son sürümüne yönlendirir SQL Serveryerel istemci ole db sağlayıcısını.)

SELECT *
FROM OPENDATASOURCE('SQLNCLI',
    'Data Source=London\Payroll;Integrated Security=SSPI')
    .AdventureWorks2012.HumanResources.Employee

SELECT *
FROM OPENDATASOURCE('SQLNCLI',
    'Data Source=London\Payroll;Integrated Security=SSPI')
    .AdventureWorks2012.HumanResources.Employee

Aşağıdaki örnek, 1997-2003 biçiminde bir Excel elektronik tablosu geçici bir bağlantı oluşturur.

SELECT * FROM OPENDATASOURCE('Microsoft.Jet.OLEDB.4.0',
'Data Source=C:\DataFolder\Documents\TestExcel.xls;Extended Properties=EXCEL 5.0')...[Sheet1$] ;

SELECT * FROM OPENDATASOURCE('Microsoft.Jet.OLEDB.4.0',
'Data Source=C:\DataFolder\Documents\TestExcel.xls;Extended Properties=EXCEL 5.0')...[Sheet1$] ;

Ayrıca bkz.

Başvuru

OPENROWSET (Transact-SQL)

sp_addlinkedserver (Transact-sql)