25

我是 SQL Server Express 的新手,我想在我的表上创建一个新触发器。

但我发现表的触发器文件夹中的“新触发器”按钮显示已禁用。当我右键单击触发器文件夹时,它显示“新触发器”按钮已禁用并呈灰色。

我正在使用 SQL Server 2014 Express 和 Management Studio 2014。

有人知道为什么会这样吗?

请给我一些出路。

4

4 回答 4

36

这是 SSMS 2014 的一个已知问题(错误)。

参考:https ://connect.microsoft.com/SQLServer/feedback/details/873249/ssms-2014-new-trigger-is-disabled-for-older-2012-2008r2-versions-of-sql-server

或者,您可以使用类似的东西:

CREATE TRIGGER TriggerName
    ON [dbo].[TableName]
    FOR DELETE, INSERT, UPDATE
    AS
    BEGIN
    SET NOCOUNT ON
    END
于 2014-11-12T11:09:15.313 回答
3

我知道这篇文章较旧,但是当我尝试使用 SQL Server Management Studio (SSMS) 2014 (12.0.5000.0) 时遇到了它,当我连接到 SQL Server 2008 R2 企业数据库时发现“新触发器”选项灰显. 经过进一步调查,Microsoft 表示 2014 SP1(不包括 SP1)之后的 SSMS 版本对此进行了修复。不幸的是,我没有找到解决此问题的 SSMS 2014 更新,但由 Ayo Olubeko 于 2016 年 4 月 8 日发布,指示此处的人员(评论部分)从Microsoft 的下载站点下载最新版本,它现在有一个独立的安装程序和可以轻松更新以解决此特定问题。以前的版本(例如 2016 年 6 月版本)应该已修复此问题,并且可以在 (https://docs.microsoft.com/en-us/sql/ssms/previous-sql-server-management-studio-releases)但我决定下载最新的。

下载 SSMS 2016 (13.0.16106.4) 的 898MB 安装程序后,当我连接到同一个数据库时,此选项似乎不再灰显!

我希望这可以帮助像我一样还没有跳到最新 SSMS 的其他人。请注意,这只会打开 Vishal Gajjar 在问题评论中提到的模板文件,对我来说不是自动填充表名或任何字段,但我也不知道它是否应该这样做。界面看起来很相似,所以我看不出有什么理由不能使用它来替换和卸载 2014 版本以获取所有更新和改进。

于 2017-04-12T16:29:25.083 回答
0

值得注意的是,您可以通过 Visual Studio 生成用于创建触发器的骨架脚本。

只需使用服务器资源管理器连接到数据库,展开表文件夹,右键单击任何表并点击新建触发器。

于 2018-05-05T00:51:34.510 回答
-4

Express 版本中打包的 SSMS 是 SSMS 完整功能集的子集。

还有几个其他选项不存在,包括启用和禁用触发器的 GUI。我相信对 SQL 代理的控制是其中之一。如果您使用完整版的 SSMS 连接到 Express DB 引擎,则会出现该选项。

如果您需要该选项,请尝试下载 SQL 的完整试用版或开发人员版,并安装完整版随附的 SSMS。布拉德

于 2014-11-06T21:23:22.487 回答