Zprovoznění OPENROWSET a OPENDATASOURCE na SQL2005 a SQL2008

PříspěvekNapsal: 23.10.2008 13:58
od jan.sindelar
Implicitně jsou z bezpečnostních důvodů po instalaci SQL 2005 zakázány tzv. Ad Hoc Remote Queries. Nebudou tak fungovat SELECTy, které používají OPENROWSET a OPENDATASOURCE pro načítání dat z externích datových zdrojů (např. DBF souborů). Je proto potřeba nejprve tyto vlastnosti v konfiguraci serveru povolit.

Pro SQL 2005 existuje uživatelsky příjemnější způsob s využitím konfiguračních nástrojů serveru. Příslušný nástroj lze najít přes nabídku Start -> Programy -> Microsoft SQL Server 2005 -> Configuration Tools, kde zvolíme položku "SQL Server Surface Area Configuration". Po spuštění nástroje vybereme v zobrazeném okně zcela dole variantu "Surface Area Configuration for Features". Zde je pak třeba rozbalit "stromeček" voleb, přičemž nás zajímá větev "Database engine", položka Ad Hoc Remote Queries". Zde zaškrtneme volbu "Enable OPENROWSET and OPENDATASOURCE support".


Stejnou vlastnost pro SQL 2008 lze aktivovat spuštěním jednoduchého skriptu např. přes Management Studio nebo jako HQL skript přes Helios Orange.

Kód: Vybrat vše
sp_configure 'show advanced options', 1
RECONFIGURE

GO

sp_configure 'Ad Hoc Distributed Queries', 1
RECONFIGURE


Update 31.10.2008: I v SQL 2008 lze použít uživatelskou cestu bez spouštění skriptů, viz tento příspěvěk https://forum.helios.eu/orange/forum/viewtopic.php?f=25&t=346 v části o Surface Area Configuration.