Udostępnij za pośrednictwem


OPENROWSET (DMX)

Zastępuje kwerendy urządzenie źródłowe danych za pomocą kwerendy z dostawca zewnętrznych.Obsługuje instrukcje INSERT, SELECT FROM przewidywanie łączyć i SELECT FROM fizyczne przewidywanie łączyć OPENROWSET. Aby uzyskać więcej informacji na temat składni dla określonych dostawców zobacz OPENROWSET (Transact-SQL).

OPENROWSET(provider_name,provider_string,query_syntax)

Argumenty

  • provider_name
    O nazwie dostawca OLE DB.

  • provider_string
    Ciąg połączenia OLE DB dla określonego dostawca.

  • query_syntax
    Składnia kwerendy, która zwraca zestawu zestaw wierszy.

Remarks

Właściwość zestaw na Analysis Services serwer, aby umożliwić kwerendy ad hoc, przy użyciu OPENROWSET. Jednakże zaleca się, że należy użyć opcji zamiast OpenQuery wysyłania.Za pomocą OPENQUERY, można kontrolować źródeł danych, do których użytkownicy mają dostęp, jak użytkownicy mający OPENROWSET może przeglądać tabela bazy danych, które są do zadania wyszukiwanie danych.

Jeśli zostanie wybrana opcja Włącz kwerend ad hoc OPENROWSET, należy ograniczyć dostawców, które mogą być używane do połączenia serwera i bazy danych przez określenie identyfikatora dostawcaAby uzyskać więcej informacji zobaczData Mining Properties.

Dokładną składnię OPENROWSET zależy od dostawca, które zostały określone przez użytkownika.Ogólnie rzecz biorąc dostawca wyszukiwanie danych nawiązać połączenie obiektu urządzenie źródłowe danych przy użyciu provider_name i provider_string, i będzie wykonywać kwerendy, określone w query_syntax Aby pobrać zestaw wierszy w danych źródłowych.

Przykłady

W poniższym przykładzie pokazano instrukcji łączyć przewidywanie, która pobiera dane z tabela ProspectiveBuyers AdventureWorksDW2008 bazy danych przy użyciu Transact-SQL Instrukcja SELECT i przewiduje klastra dla każdego nowego nabywcy.

Identyfikator użytkownika, DMUser, jest logowania SQL, które określono uprawnienia tylko do odczytu w tabela danych, używany do przechowywania nowych klientów.Należy zauważyć, że hasła są prezentowane w wyczyść tekstu w OPENROWSET i w związku z tym zagrożenia bezpieczeństwa.Zaleca się, że se OPENQUERY zamiast i zabezpieczania danych relacyjnych źródeł z najniższym możliwym poziomie dostępu.

Pierwsze trzy pola w klauzula SELECT instrukcja OPENROWSET nie są używane przez model do przewidywanie, ale są przydatne do identyfikacji klientów.Wszystkie kolumny, które są używane do przewidywanie musi być mapowany do wprowadzania kolumn w modelu, dodając je do klauzula ON.

SELECT
  t.[ProspectiveBuyerKey], t.[LastName], t.[FirstName],
  Cluster()
FROM
  [TM_Clustering]
PREDICTION JOIN
  OPENROWSET('SQLOLEDB','localhost';'DMUser';'&IZqw3x&',
    'SELECT
      [ProspectiveBuyerKey], [FirstName],[LastName],
      [MaritalStatus],
      [Gender],
      [YearlyIncome],
      [TotalChildren],
      [NumberChildrenAtHome],
      [HouseOwnerFlag],
      [NumberCarsOwned]
    FROM
      [AdventureWorksDW2008].[dbo].[ProspectiveBuyer]
    ') AS t
ON
  [TM_Clustering].[Marital Status] = t.[MaritalStatus] AND
  [TM_Clustering].[Gender] = t.[Gender] AND
  [TM_Clustering].[Yearly Income] = t.[YearlyIncome] AND
  [TM_Clustering].[Total Children] = t.[TotalChildren] AND
  [TM_Clustering].[Number Children At Home] = t.[NumberChildrenAtHome] AND
  [TM_Clustering].[House Owner Flag] = t.[HouseOwnerFlag] AND
  [TM_Clustering].[Number Cars Owned] = t.[NumberCarsOwned]

Przykład wyniki: