Visual Studio 2013数据库项目 - UDTT - FileStream列问题

时间:2015-02-13 12:51:47

标签: sql-server visual-studio-2013 database-project

在使用Visual Studio 2013(Update 4)数据库项目中的FILESTREAM列创建用户定义的表类型时遇到问题。

我已将包含FILESTREAM的FILEGROUP添加到项目中,并通过项目设置>将其配置为默认文件流文件组。数据库设置>操作标签。

create table语法如下:

CREATE TYPE [dbo].[MediaType] AS TABLE (
[Guid] UNIQUEIDENTIFIER NOT NULL,
[MediaTypeId] INT NOT NULL,
[Data] VARBINARY(MAX) FILESTREAM NOT NULL);

我收到以下错误:

  

SQL46010; FILESTREAM附近的语法不正确。

我已经检查了创建支持FILESTREAM的标准表所需的基本语法(Click Here),我的语法对我来说很合适,所以我猜它是特定于项目的。

任何帮助都会很棒 - 提前谢谢。

1 个答案:

答案 0 :(得分:0)

我在我的要求中犯了一个错误 - 我正在使用UDTT批量插入媒体数据,但是可以将它作为VARBINARY(MAX)存储在UDTT中,然后将SELECT-INSERT插入到配置为的真实表中FILESTREAM列如下:

CREATE TABLE [dbo].[Media]
(
[Id] INT NOT NULL PRIMARY KEY IDENTITY,
[Guid] UNIQUEIDENTIFIER NOT NULL ROWGUIDCOL,
[MediaTypeId] INT NOT NULL,
[Data] VARBINARY(MAX) FILESTREAM NOT NULL
)

在UDTT中使用FILESTREAM列类型是不正确的。