全局触发器约束表必须有主键
来源:互联网 发布:淘宝买东西怎样付款 编辑:程序博客网 时间:2024/06/01 07:27
CREATE TRIGGER trg_create_table_with_pk ON DATABASE FOR CREATE_TABLE
AS
DECLARE @eventdata AS XML, @objectname AS NVARCHAR(257),
@msg AS NVARCHAR(500);
SET @eventdata = eventdata();
SET @objectname =
+ QUOTENAME(@eventdata.value('(/EVENT_INSTANCE/SchemaName)[1]', 'sysname'))
+ N'.' +
QUOTENAME(@eventdata.value('(/EVENT_INSTANCE/ObjectName)[1]', 'sysname'));
IF COALESCE(
OBJECTPROPERTY(OBJECT_ID(@objectname), 'TableHasPrimaryKey'),
0) = 0
BEGIN
SET @msg = N'Table ' + @objectname + ' does not contain a primary key.'
+ CHAR(10) + N'Table creation rolled back.';
RAISERROR(@msg, 16, 1);
ROLLBACK;
RETURN;
END
GO
AS
DECLARE @eventdata AS XML, @objectname AS NVARCHAR(257),
@msg AS NVARCHAR(500);
SET @eventdata = eventdata();
SET @objectname =
+ QUOTENAME(@eventdata.value('(/EVENT_INSTANCE/SchemaName)[1]', 'sysname'))
+ N'.' +
QUOTENAME(@eventdata.value('(/EVENT_INSTANCE/ObjectName)[1]', 'sysname'));
IF COALESCE(
OBJECTPROPERTY(OBJECT_ID(@objectname), 'TableHasPrimaryKey'),
0) = 0
BEGIN
SET @msg = N'Table ' + @objectname + ' does not contain a primary key.'
+ CHAR(10) + N'Table creation rolled back.';
RAISERROR(@msg, 16, 1);
ROLLBACK;
RETURN;
END
GO
0 0
- 全局触发器约束表必须有主键
- SQL约束(外键、主键、触发器)
- 有重复数据的表添加主键或唯一约束
- MySql-聚集索引-表为什么必须有主键
- SQL - 创建一个学生表,要求有主键约束和非空约束
- sql基础、主键、游标、规则约束、存储过程、触发器
- SQLServer数据库约束(1)_表内约束(单表的五类约束)_附自增属性以及全局唯一性标识符类型作为主键
- 如果有一个表:AdminUser,ID(主键)、Name和PW,如何约束Name是唯一的?
- 主键约束
- 主键约束
- 主键约束
- MySQL表为什么必须有主键 -- 聚集索引的简单介绍
- 约束----主键约束
- 向表中添加主键约束
- 删除表时同时删除主键约束
- oralce数据库表删除主键约束
- sqlserver 基础(增、删、改、查、链表查询、建立聚焦索引、主键、创建约束、创建外键)、触发器、存储过程
- 触发器约束表中数据重复
- java 堆栈的区别
- Ubuntu 12.10 用wubi安装到硬盘中
- jQuery常用标签详解
- Syline6.5学习心得-web-多边形查询
- C语言文件操作
- 全局触发器约束表必须有主键
- 如何Adobe Acrobat左侧标签、页面、签名回到原位置(导航板)
- Airbnb关于创业公司“设计主导”理念的看法
- 关于移动端,我回忆和思考了一下
- highcharts图表组件实战经验篇:如何设置柱状图柱子立体(颜色渐变)效果类似3D效果之linearGradient和stops
- oracle 11g 创建表空间
- Q9:fatal error:use of unimplemented initializer
- 如何得到juniper的<pe ip> <device_name> <filter name>等
- C# treeview右键菜单 设置技巧