SQLサーバーでリンクされたサーバーを設定すると、MS Access、Excelその他のデータベース タイプなどの、多くの外部データソースからデータを取得できます。
Excelブックに含まれるデータをEnterprise PDMのリストに入力したい場合、まずExcelデータソースをSQL Server内でリンクされたサーバーとして設定してから、そのリンクされたサーバーに対してクエリを行い希望の情報を取得します。
リンクされたサーバーと分散クエリについての詳細は、次のMicrosoft Knowledge Base記事を参照してください。 http://support.microsoft.com/kb/306397
Excelは、SQLサーバーがインストールされているサーバーにインストールする必要があります。
Excelデータ ソースをSQL Server 2005のリンクされたサーバーとして設定するには:
- SQL Server Management Studioの Object Explorer パネルで Server Objects を展開します。
- Linked Server を右クリックして New Linked Server を選択します。
-
新しいリンクされたサーバーを作成するには、左側パネルの General プロパティ ページで以下を行います:
-
リンクされたサーバーの名前として任意の名前を入力します。 わかりやすくするため、Excelブックと同様の名前にしておくと良いでしょう。 この例では、"MY_EXCEL_WORKBOOK_LINKED_SERVER"という名前が使用されています。
- Other data source を選択します。
- Providerリストで、Microsoft Jet 4.0 OLE DB Provider を選択します。
- Product Name に、OLE DBデータ ソースの名前として Excel と入力します。
- Data Source に、Excel文書のフルパスと名前を次のように入力します: C:\EngineeringData\My_Excel_Workbook.xls.
- Provider String に、Excel 97、2000、2002 ブックに対応した Excel 8.0 と入力します。
- OKをクリックします。
- リンクされたサーバー上のExcelデータ ソースへ問い合わせを行います。
例えば、ExcelファイルのSheet1にある'PartNumber'列のフィールドを取得するには、次のコードを使用します: SELECT PartNumber FROM MY_EXCEL_WORKBOOK_LINKED_SERVER...Sheet1$
上記のSQLクエリをEnterprise PDMリストで "From SQL Database"データ型を使って使用し、X分ごとにリフレッシュするように設定すれば、ExcelファイルのPartNumbers をEnterprise PDMに取得することができます。
データベース名(サーバー上の既存のデータベース、たとえばNorthwindサンプル データベースやファイルボルト データベース等何でも良い)、リンクされたサーバーを持つSQLサーバーに対するログイン情報を入力する必要があります。