0

次のクエリを使用して、ファイルストリーム対応の DB で単純な DB を作成しようとすると:

CREATE DATABASE Archive
ON
PRIMARY ( NAME = Arch1,
FILENAME = 'c:\data\archdat1.mdf'),
FILEGROUP FileStreamGroup1 CONTAINS FILESTREAM( NAME = Arch3,
FILENAME = 'c:\data\filestream1')
LOG ON  ( NAME = Archlog1,
FILENAME = 'c:\data\archlog1.ldf')
GO

その後、次のエラーが発生します..

Msg 5120, Level 16, State 106, Line 1

Unable to open the physical file "c:\data\filestream1". Operating system error -2147024891: "0x80070005(failed to retrieve text for this error. Reason: 1815)".

誰もが「c:\data\」ディレクトリに対してフル コントロールのアクセス許可を持っていると確信しています..ファイル ストリームがレベル 1 で有効になっていると確信しています。

また、DBファイルの場所をデフォルトのSQLデータフォルダーに変更しようとしましたが、同じ結果でした..

また、「c:\data\filestream1」ディレクトリを手動で作成しようとしましたが、次のエラーが発生します。

Msg 5170, Level 16, State 2, Line 1

Cannot create file 'c:\data\filestream1' because it already exists. Change the file path or the file name, and retry the operation.

誰かがこの問題を解決する方法を知っているなら、私を助けてください..

前もって感謝します

4

1 に答える 1

0

本当の答えは次のとおりです。

  1. FileStream が有効になっていることを確認します。スタート/プログラム/SQL Server 2008/構成ツール/SQL Server 構成

  2. ローカル サービスを右クリックし、[プロパティ] に移動します。

  3. FileStream の [Tab] をクリックし、チェックされていない場合は、[Transact SQL の FileStream を有効にする] をオンにし、[ローカル ファイルの FileStream を有効にする] をオンにします。必要な SQLSERVICE がテキスト ボックスに指定されていることを確認します。

  4. [ログオン] タブで、サービスが LO​​CAL SERVICE で開始されていることを確認します。

  5. [OK] をクリックします。

スクリプトは、データベースを作成するために機能するはずです。失敗した場合は、コントロール パネル/管理ツール/サービス/に移動します。

必要な SQL Server を探し、ログオンがローカル サービスであることと、[このサービスがデスクトップと対話することを許可する] チェックボックスがオンになっていることを確認します。

于 2012-05-21T12:16:06.273 に答える