我的应用程序中有一个数据库项目,并且想要抑制该项目引发的错误/警告。.首先有可能吗?
我想我不清楚我的问题,通过压制我的意思是当我构建我的解决方案时,错误(实际上不是错误)显示在错误列表中,我只想不显示所有与数据库项目相关的错误在错误列表中。
我正在使用VS2010。
提前致谢
我的应用程序中有一个数据库项目,并且想要抑制该项目引发的错误/警告。.首先有可能吗?
我想我不清楚我的问题,通过压制我的意思是当我构建我的解决方案时,错误(实际上不是错误)显示在错误列表中,我只想不显示所有与数据库项目相关的错误在错误列表中。
我正在使用VS2010。
提前致谢
要抑制特定警告,请转到项目属性 -> 构建。
在“禁止 Transact-SQL 警告:”字段中以逗号分隔格式输入警告编号(即不带“SQL”)。
选择项目中的文件:
示例:projectDatabase\ddl\table_name.sql
在文件集的属性窗口上
构建操作:无。
在构建时,它不会在此文件中查找错误或警告。
刚刚在 Visual Studio 2015 中遇到了这个问题。
在错误列表面板标题的中间,有一个(未命名的)下拉列表,其值为“Build + Intellisense”、“Build Only”、“Intellisense Only”。我的设置为“构建+智能感知”。将其更改为“仅构建”消除了所有(200 多个)错误。
迟到总比不到好:
选项 -> 数据库工具 -> 数据库错误和警告 -> 将最大值设置为 0,从现在开始,错误窗口将有一个条目,会显示类似
错误 1 已达到最大错误数 0。共遇到 76 个错误、0 个警告和 0 个消息。
--编辑--来自下面的评论...非常有帮助
在 VS 11 中,此选项似乎已移至工具 > 选项 > SQL Server 工具 > 常规
在 VS 2015 中,您可以通过 2 种方式抑制警告。
项目级别
我不建议这样做,因为我只喜欢在我确切知道我在压制什么的情况下压制警告。例如,在 C# 中,我们可以在非常精细的级别上使用SuppressMessageAttribute 。
尽管如此,这里是如何:
右键单击数据库项目 > 属性 > 构建 > 抑制 Transact-SQL 警告:
输入要禁止显示的警告,例如 4151。
文件级别
我更喜欢/建议使用此选项,因为与上述选项相比,它更精细。
在解决方案资源管理器中右键单击文件1 > 属性 > 抑制 T-SQL 警告
输入要禁止显示的警告,例如 4151。
1. 您必须在解决方案资源管理器中右键单击文件节点。如果您在编辑器中右键单击文件,您将获得不同的选项。
可能存在另一种方式,但到目前为止我只知道这两种方式。
您可以从解决方案配置中删除项目的构建/部署。这样 VS 根本不会尝试构建数据库项目。
当然,数据库项目中的任何更改都将被忽略。
要更改或创建新的解决方案文件,请右键单击解决方案资源管理器中的解决方案节点并选择属性。在该对话框中,配置节点(在配置属性下)选项卡并单击配置管理器。
这允许您创建新配置并编辑现有配置,并且每个配置都映射到项目配置(<new>
在活动解决方案下拉列表中添加一个新选择)。
当然,更好的方法是修复错误。
我的解决方法(在 VS2019 中)是:
1) 将此脚本的构建操作设置为无。=> 为了避免错误消息 2) 创建一个 PostDeployment 脚本(如果不存在) 3) 添加行 :r .\Path_script\script_name.sql => 发布时执行脚本(如果需要,在之前添加一个 drop 语句)
在菜单 SQL->Execution settings -> SQLCMD Mode 中激活 SQLCMD 模式
希望这有帮助。
回到警告和 Visual Studio 2019 的公认答案:
1)右键单击数据库项目并选择属性 数据库解决方案
2) 在“Build”和“Suppress Transact-SQL warnings:”下输入你想抑制的SQL警告编号,例如:SQL71502你输入71502。你可以输入多个警告抑制代码以逗号分隔的方式。 未解析的对象引用的抑制代码示例
3)保存您的解决方案,警告应该消失。您可能需要输入多个警告代码才能使警告变为 0。
在 Visual Studio 2017 中,您可以执行以下操作:转到工具 --> 选项 --> SQL server 工具 --> 在错误和警告下,设置“最大编号”。错误和警告......” 作为1。
您可以在构建时通过右键单击该项目来排除该项目,然后在 Windows 应用程序中选择“排除项目”。如果是 Web 应用程序,则为“卸载项目”。
显示/隐藏错误列表
转到工具 > 选项
扩展项目和解决方案
选择常规。
在右侧,第一个复选框是“如果构建完成时出现错误,则始终显示错误列表”