如何连接开启FileStream 的sql server2008 r2 数据库?

时间:2022-12-01 21:54:30
如何连接开启FileStream 的sql server2008 r2 数据库?
C#中的连接字符串怎么写?
server=
 initial catalog=
 user id=
 password=

除了这些 还需要写什么?
或者怎么设置数据库?

integrated security=SSPI可以连接,但是 这个只能是本地连接,远程不行,提示:域不同不能通过安全认证。 

//C#中使用SqlFileStream 访问保存文件
//........................
command.CommandText = "SELECT [FileData].PathName(), " +
                             "GET_FILESTREAM_TRANSACTION_CONTEXT() FROM [" + _TableNameEN + "] WHERE [FID] = '" + fID + "'";

//........................
                         string path = reader.GetString(0);
                         byte[] transactionContext = reader.GetSqlBytes(1).Buffer;
//........................
  SqlFileStream fileStream = new SqlFileStream(path,
                         (byte[])reader.GetValue(1),
                             FileAccess.Read,
                             FileOptions.SequentialScan, 0);

8 个解决方案

#1


在程序—SQL —配置工具—配置管理器—服务—实例—属性—FILESTREAM—把钩全选

#2


另外
在实例—属性—高级(启用访问)
数据库—属性—选项(非事务访问)

#3


引用 2 楼 roy_88 的回复:
另外
在实例—属性—高级(启用访问)
数据库—属性—选项(非事务访问)

数据库—属性—选项(非事务访问)
中非事务访问 是哪项?不好意思没有找到。

#4


引用 3 楼 asd97500 的回复:
Quote: 引用 2 楼 roy_88 的回复:

另外
在实例—属性—高级(启用访问)
数据库—属性—选项(非事务访问)

数据库—属性—选项(非事务访问)
中非事务访问 是哪项?不好意思没有找到。

--不会就用语句
USE [master]
GO
ALTER DATABASE [数据库名] SET FILESTREAM( NON_TRANSACTED_ACCESS = FULL ) WITH NO_WAIT
GO

#5


SQL2008没有选项不用配置,你不用理会
建数据库时定义好FILESTREAM

在SQL2014环境下有这选项

#6


引用 4 楼 roy_88 的回复:
--不会就用语句
USE [master]
GO
ALTER DATABASE [数据库名] SET FILESTREAM( NON_TRANSACTED_ACCESS = FULL ) WITH NO_WAIT
GO

我看了帮助,
若要使用 Win32 访问 FILESTREAM BLOB,必须启用 Windows 授权。
就是在sql下启用 Windows身份验证

现在有个问题 “怎样通过Windows身份验证 远程 连接SQL Server服务 ”?C#中的代码怎么写?和数据库需要进行什么具体设置么?

#7


怎样通过Windows身份验证 远程 连接SQL Server服务?

#8


server=写你要连的服务器的IP地址,本地就用“.”
 initial catalog=数据库的名称
 user id=连接数据库的用户名,例如“sa”
 password=对应的密码

#1


在程序—SQL —配置工具—配置管理器—服务—实例—属性—FILESTREAM—把钩全选

#2


另外
在实例—属性—高级(启用访问)
数据库—属性—选项(非事务访问)

#3


引用 2 楼 roy_88 的回复:
另外
在实例—属性—高级(启用访问)
数据库—属性—选项(非事务访问)

数据库—属性—选项(非事务访问)
中非事务访问 是哪项?不好意思没有找到。

#4


引用 3 楼 asd97500 的回复:
Quote: 引用 2 楼 roy_88 的回复:

另外
在实例—属性—高级(启用访问)
数据库—属性—选项(非事务访问)

数据库—属性—选项(非事务访问)
中非事务访问 是哪项?不好意思没有找到。

--不会就用语句
USE [master]
GO
ALTER DATABASE [数据库名] SET FILESTREAM( NON_TRANSACTED_ACCESS = FULL ) WITH NO_WAIT
GO

#5


SQL2008没有选项不用配置,你不用理会
建数据库时定义好FILESTREAM

在SQL2014环境下有这选项

#6


引用 4 楼 roy_88 的回复:
--不会就用语句
USE [master]
GO
ALTER DATABASE [数据库名] SET FILESTREAM( NON_TRANSACTED_ACCESS = FULL ) WITH NO_WAIT
GO

我看了帮助,
若要使用 Win32 访问 FILESTREAM BLOB,必须启用 Windows 授权。
就是在sql下启用 Windows身份验证

现在有个问题 “怎样通过Windows身份验证 远程 连接SQL Server服务 ”?C#中的代码怎么写?和数据库需要进行什么具体设置么?

#7


怎样通过Windows身份验证 远程 连接SQL Server服务?

#8


server=写你要连的服务器的IP地址,本地就用“.”
 initial catalog=数据库的名称
 user id=连接数据库的用户名,例如“sa”
 password=对应的密码