SQL Server DDL】的更多相关文章

一.本文所涉及的内容(Contents) 本文所涉及的内容(Contents) 背景(Contexts) 基础知识(Rudimentary Knowledge) DDL运用场景(DDL Scene) 补充说明(Addon) 疑问(Questions) 参考文献(References) 二.背景(Contexts) 说到触发器,大家都会想到这样的使用场景:当一个表的数据修改了,运用DML触发插入或者更新到其它表中:那DDL触发器(SQL Server 2005引入的新功能)会运用到什么场景中呢?本…
一.数据库:1.建立数据库 create database 数据库名;use 数据库名; create database exp1;use exp1; mysql同样 2.删除数据库 drop database 数据库名;drop database exp1; mysql同样 二.表:1.创建表 create table 表名(    列名1 类型1 [约束],    列名2 类型2 [约束],    ...); create table Student(    Sno Char(7) prim…
DDL 触发器作用: DDL 触发器主要用于防止对数据库架构.视图.表.存储过程等进行的某些修改. DDL 触发器事件: DDL 触发器在创建用来监视并响应该数据库或服务器实例中的活动的事件通知时,可以指定相应事件类型或事件组. 超链接:DDL 事件 和 DDL 事件组 DDL 触发器类别: DDL 触发器分为:数据库(DataBase)级别和服务器(Server)级别 DDL 数据库(DataBase)级别触发器: 因为 DDL 触发器不在架构范围内,所以不会在 sys.objects 目录视…
1:向表中添加字段 Alter table [表名] add [列名] 类型 2:  删除字段 Alter table [表名]  drop column [列名] 3:  修改表中字段类型 (可以修改列的类型,是否为空) Alter table [表名] alter column [列名] 类型 4:添加主键 Alter table [表名] add constraint [ 约束名] primary key( [列名]) 5:添加唯一约束 Alter table [表名] add const…
一.前言(Introduction) SQL Server监控在很多时候可以帮助我们了解数据库做了些什么,比如谁谁在什么时候修改了表结构,谁谁在删除了某个对象,当这些事情发生了,老板在后面追着说这是谁干的,如果你找不出元凶,那么就成为背黑锅的人了. 如果你想更了解什么时候需要对数据库做什么监控,那么我建议你看看本系列文章: 下图是一个关于SQL Server可用做监控功能的逻辑关系图: (Figure1:SQL Server可用做监控功能的逻辑关系图) 二.系列文章索引(Catalog) Ste…
一.本文所涉及的内容(Contents) 本文所涉及的内容(Contents) 背景(Contexts) 基础知识(Rudimentary Knowledge) 事件通知监控DDL(NotifyQueue_DDL) 事件通知监控SQL跟踪事件(NotifyQueue_Trace) 注意事项(Attention) 疑问(Questions) 参考文献(References) 二.背景(Contexts) SQL Server事件通知有什么用呢?如果你想监控SQL Server的DDL操作,你可以通…
一.本文所涉及的内容(Contents) 本文所涉及的内容(Contents) 背景(Contexts) 基础知识(Rudimentary Knowledge) 查看默认跟踪信息(Default Trace) 补充说明(Addon) 参考文献(References) 二.背景(Contexts) 思考这样的场景:数据库的表.存储过程经常别修改,当这些修改造成BUG的时候,很多开发都不承认是他们干的,那我们有没办法找出谁干的呢? SQL Server有Default Trace默认跟踪,数据库记录…
一.本文所涉及的内容(Contents) 本文所涉及的内容(Contents) 背景(Contexts) 实现代码(SQL Codes) 注意事项(Attention) 疑问(Questions) 参考文献(References) 二.背景(Contexts) DML触发器一般会运用在业务系统的逻辑处理上,在你对数据库用户权限控制不当的时候,这些DML触发器很可能莫名的被禁用或者删除了,你作为数据库管理员你想做冤大头嘛?背黑锅嘛?如果不想,下面给出4种解决方案: 1. 使用DDL触发器对服务级别…
原文:SQL Server 限制IP登陆(登陆触发器运用) 一.本文所涉及的内容(Contents) 本文所涉及的内容(Contents) 背景(Contexts) 实现代码(SQL Codes) 补充说明(Addon) 疑问(Questions) 参考文献(References) 二.背景(Contexts) 在MySQL的mysql.User表保存了登陆用户的权限信息,Host和User字段则是关于登陆IP的限制.但是在SQL Server没有这样一个表,那SQL Server有什么办法可以…
在我们的工作中可能会遇到这样一种情形.由于数据库中某些对象被altered/created/deleted,造成我们的应用程序crash. 当我们把问题解决之后,老板可能会问发生了什么?为什么会这样?是谁干的? 在SQL Server 2005中提供了DDL trigger,它能回答所用这些问题,但我们没有在事前实现这一工作. 在这种情况下,有些人可能会对老板说:“我不知道,但我能去查.”之后就疯狂地寻找第三方的工具来读transaction log(事物日志).他们可能不知道SQL Serve…