opendatasource (Transact-SQL)
bağlantılı sunucu adı kullanmadan dört nesne adının bir parçası olarak geçici bağlantı bilgilerini sağlar.
Sözdizimi
OPENDATASOURCE ( provider_name, init_string )
Bağımsız değişkenler
provider_name
Adı, veri kaynakerişmek için kullanılan ole DBsağlayıcı ProgID kaydedilir. provider_nameolan bir char veri türü, ile hiçbir varsayılan değeri.init_string
bağlantı dizesi için geçirilen IDataInitialize hedefsağlayıcıarabirim . sağlayıcıdize sözdizimi gibi noktalı virgülle ayrılmış anahtar-değer çiftleri üzerinde bağlıdır: 'keyword1=değeri;keyword2=value'.sağlayıcıdesteklenen belirli anahtar-değer çiftleri için bkz: Microsoft Data Access SDK.Bu belge temel sözdizimi tanımlar.Aşağıdaki tablo listeleri en sık kullanılan anahtar sözcük init_string bağımsız değişkeni.
Anahtar Sözcük
ole DB özellik
Geçerli değerler ve açıklama
Veri Kaynağı
DBPROP_INIT_DATASOURCE
Bağlanmak için veri kaynak adı.Farklı sağlayıcılar bu farklı şekillerde yorumlamak.İçin SQL Server yerel istemci ole DB sağlayıcı, bu sunucu adı. gösterirJet ole DB sağlayıcıfor bu .mdb dosyası veya .xls dosyasının tam yol gösterir.
Location
DBPROP_INIT_LOCATION
Bağlanmak için veritabanının konumu.
Genişletilmiş Özellikler
DBPROP_INIT_PROVIDERSTRING
sağlayıcı- özel bağlanma -dize.
Bağlantı zaman aşımı
DBPROP_INIT_TIMEOUT
Zaman aşımı değeri bağlantı deneyin sonra başarısız olur.
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 kaynakbağ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şmek için kullanılabilir ole DB yalnızca veri kaynakları DisallowAdhocAccess kayıt defteri seçenektir açıkça belirtilen sağlayıcıiçin 0 küme ve Ad Hoc Distributed Queries Gelişmiş yapılandırma seçeneğini etkin.Bu seçenekleri kümeolmadığında, varsayılan davranış geçici erişim için izin vermez.
Aynı şekilde opendatasource işlev kullanılabilir Transact-SQL sözdizimi konumlarına bağlı olarak-sunucu adı.Bu nedenle, opendatasource select, INSERT, update veya delete deyim tablo veya görünüm adı ya da execute deyim uzak saklı yordam başvuran dört ad ilk bölümü olarak kullanılabilir.Uzak saklı yordamlar yürütürken, opendatasource başka bir örnek başvurmalıdır SQL Server.opendatasource bağımsız değişkenleri kabul etmez.
openrowset işlevgibi opendatasource yalnızca ole DB veri kaynakları, seyrek erişilen başvuru.bağlantılı sunucu birkaç katından fazla erişilen tüm veri kaynakları tanımlayın.Ne opendatasource veya openrowset, güvenlik yönetimi ve Katalog bilgileri sorgulama yeteneği gibi bağlantılı sunucu tanımlarını tüm işlevselliği sağlar.Parolalar, tüm bağlantı bilgilerini opendatasource denir her saat sağlanmalıdır.
Önemli |
---|
Windows kimlik doğrulaması çok daha güvenli SQL Server kimlik doğrulaması.Mümkün olduğunda Windows kimlik doğrulaması kullanmanız gerekir.bağlantı dizesiaçık parolalarla opendatasource kullanılmamalıdır. |
Bağlantılı sunucular oluştururken her sağlayıcı için bağlantı gereksinimleri Bu parametreler için gereksinimleri benzer.Birçok ortak sağlayıcıları için Ayrıntıları'nda listelenen sp_addlinkedserver (Transact-SQL).
İzinler
Herhangi bir kullanıcı için opendatasource yürütmek .Uzaktan erişim sunucusuna bağlanmak için kullanılan izinleri ve bağlantı dizesibelirlenir.
Örnekler
Aşağıdaki örnek, geçici bir bağlantı oluşturur Payroll örnek SQL Server Server Londonve sorgular AdventureWorks2008R2.HumanResources.Employee tablo. (SQLNCLI kullanın ve SQL Server Yönlendir'ın en son sürüm SQL Server yerel istemci ole DB sağlayıcısı.)
SELECT *
FROM OPENDATASOURCE('SQLNCLI',
'Data Source=London\Payroll;Integrated Security=SSPI')
.AdventureWorks2008R2.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$] ;
Ayrıca bkz.