0

自明の質問が示すように、私は次のような状況にあることを示しています:-

  1. ユーザーが SP を実行するとすぐに、マシンから目的の Excel シートを選択するための選択ウィンドウが表示されます。
  2. この選択の後、Excel シート データ全体をテーブルにインポートする必要があります。

要件は非常に簡単です。しかし、障害は SQL の古いバージョン、つまり 2000 です。

なにか提案を ?

@MAT への対応:- 私がやろうとした多くのことの 1 つは、OPENROWSET を使用することです:-

SELECT *
INTO demoTable
FROM
OPENROWSET('Microsoft.Jet.OLEDB.4.0'
,'Excel 8.0;Database=C:\Work\Reports\CustomerRecords.xls'
,'SELECT * FROM [Sheet1$]'
)

これはエラーをスローしました:-

OLE DB プロバイダー 'Microsoft.Jet.OLEDB.4.0' へのアドホック アクセスが拒否されました。リンク サーバーを介してこのプロバイダーにアクセスする必要があります。

私が理解したように、それはアクセス関連の問題です。これをトラブルシューティングするために、私はこれを行いました:-

regedit.exe を開き、\Software\Microsoft\Microsoft SQL Server\Providers\Microsoft.Jet.OLEDB.4.0 に移動し、値 0 で DisallowAdhocAccess という名前の DWORD を作成します。

しかし、新しいDWORDの作成中にエラーが発生したため、それも機能しませんでした:-

値の作成エラー - 値を作成できません: レジストリへの書き込み中にエラーが発生しました。

4

0 に答える 0