SQL Server 2008のデータベースにテーブルを作成するときに、トリガーのような機能を実行する方法はありますか?SQL Server 2008のトリガー作成テーブル
1
A
答えて
5
はい、DDLトリガーと呼ばれます。 CREATE TRIGGER
のドキュメントにはDROP_SYNONYM
のサンプルがあります(例としては非常に疑わしい選択ですが)代わりにCREATE_TABLE
イベントが必要です。彼らがどのように動作するか理解する上で、より良い出発点は、ここでは、おそらくです:
http://msdn.microsoft.com/en-us/library/ms190989.aspx
あなたがより具体的な詳細を持っている場合は、例えば正確にこの関数に渡したいもの(私があなたがプロシージャを意味すると仮定します)、またはプロシージャが何をするか、より有用で具体的なヘルプを提供することができます。
4
はいDDLトリガー。たとえば、いくつかのテーブルが変更されないようにするために書いたコードを次に示します:
PRINT N'Create DDL trigger to prevent changes to various tables'
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TRIGGER NoEditCertainTables ON DATABASE
FOR DROP_TABLE, ALTER_TABLE, CREATE_TABLE
AS
SET CONCAT_NULL_YIELDS_NULL ON
DECLARE @AffectedTable varchar(255)
SELECT @AffectedTable = EVENTDATA().value('(/EVENT_INSTANCE/ObjectName)[1]','nvarchar(100)')
--This is the name of the table(s) you dont want messed with
IF (@AffectedTable IN ('Table1','Table2','Table3'))
BEGIN
ROLLBACK;
END
SET CONCAT_NULL_YIELDS_NULL OFF
GO
関連する問題
- 1. Sql Server 2008トリガー
- 2. SQL Server 2008のトリガー
- 3. SQL Serverの:DDLトリガー、テーブル作成
- 4. Sql Server 2008 - BEFOREトリガー?
- 5. SQL Azure/SQL Server 2008のテーブルをmysqlから作成
- 6. SQL Server 2005/2008の非同期トリガー
- 7. 再帰トリガーは、SQL Server 2008の
- 8. SQL Server 2008の親、子テーブル
- 9. SQL Server 2008のロックの作成時刻
- 10. SQL Server:監査/履歴テーブルのトリガーを作成
- 11. SQL Server 2008の自動 "スクリプトデータベース...作成"
- 12. SQL Server 2008 - 複雑な挿入トリガー
- 13. Microsoft SQL Server 2008 R2 Expressでテーブルを作成する方法
- 14. テーブル値パラメータ、SQL Server 2008
- 15. SQL Server 2000(パブリッシャ)とSQL Server 2008(サブスクライバ)間のレプリケーションの作成
- 16. SQL Server 2008の挿入トリガーの後に動作する方法
- 17. SQL Server:テーブルの作成
- 18. SQL Server 2012:テーブルの作成
- 19. トリガーを作成する方法[テーブル] MS SQL Serverで削除
- 20. インデックスを作成するSQL Server 2008
- 21. SQL Serverテーブルを作成
- 22. SQL Server 2008のテーブルの階層削除
- 23. SQL Server 2008でのテーブル型の問題
- 24. SQL Server 2008 ExpressとVFPテーブルの同期
- 25. SQL Server 2008の
- 26. SQL Server 2008の
- 27. SQL Server 2008の
- 28. - SQL Server 2008の
- 29. - SQL Serverの2008
- 30. SQL Server 2008の
thanx、これは私が探していたものです。 – themis