2012-02-16 59 views
0

我试图用新创建的包含对sys.syscolumns和sys.sysobjects的引用的脚本构建数据库项目。VS 2010中的数据库项目无法使用sys.syscolumns构建/验证脚本

错误说

Error 12 SQL03006: 
View: [dbo].[UtilityTableColumnView] has an unresolved reference to 
    object [sys].[syscolumns]. ...\Schemas\dbo\Views\UtilityTableColumnView.view.sql 

VS 2010下,谁是本地的SQL Server 2008开发版管理员Administrator帐户运行。

剧本是

CREATE VIEW [dbo].[UtilityTableColumnView] AS 

    SELECT 
     O.[id] AS TableSystemId, 
     O.[name] AS TableName, 
     C.[id] AS ColumnSystemId, 
     C.[name] AS ColumnName, 
     C.xtype AS ColumnSystemXType, 
     C.typestat AS ColumnSystemTypeStat, 
     C.xusertype AS ColumnSystemXUserType, 
     C.[length] AS ColumnSystemLength, 
     C.xprec AS ColumnSystemXPrec, 
     C.colid AS SystemColId, 
     C.colorder AS SystemColumnOrder 
    FROM 
     sys.syscolumns C INNER JOIN 
     sys.sysobjects O ON O.[id] = C.[id] 
    WHERE 
     O.xtype = 'U' 

任何想法如何解决这个问题?

回答

2

您必须将系统数据库目录添加到您的项目中。将位于C:\ Program Files(x86)\ Microsoft Visual Studio 10.0 \ VSTSDB \ Extensions \ SqlServer \ 2008 \ DBSchemas中的模式文件的引用添加到您的数据库项目引用。

+1

对于任何提出Google搜索的解决方案的人来说,这些文件已经在更新版本的Visual Studio中移动了。您应该查看C:\ Program Files文件(x86)\ Visual Studio XX.0 \ Common7 \ IDE \ Extensions \ Microsoft \ SQLDB \ Extensions \ SqlServer然后您将拥有每个SQL Server版本的文件夹,该文件夹将包含用于主和msdb。 – MBulava 2015-10-08 12:44:13

+0

另外,我们正在讨论“添加数据库参考”以选择适当的dacpac – 2016-08-10 15:20:40

相关问题