0

当我尝试使用以下查询创建具有启用文件流的数据库的简单数据库时:

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,如果未选中,请选中 Enable FileStream for Transact SQL,选中 Enable FileStream for local Files。确保在文本框中指定了所需的 SQLSERVICE

  4. 在 LogOn 选项卡上,确保使用 LOCAL SERVICE 启动服务

  5. 点击确定

您的脚本应该能够创建数据库。如果失败,请转到控制面板/管理工具/服务/

查找所需的 SQL Server,确认登录是本地服务,并选中“允许此服务与桌面交互”复选框。

于 2012-05-21T12:16:06.273 回答