create trigger TR_MasterTable_Updateon MasterTableafter updateas if update ([Type])--当Type字段被更新时,才会触发此触发器  insert into MasterLogTable  select   Id  ,(Case [Type] when 1 then 'Type1'    when 2 then 'Type2'   when 3 then 'Type3'   when 4 then 'Type4'  …
CREATE TRIGGER [dbo].[Trg_Update_table1_column1]   on table1  after update  as  if update (column1)  --当column1字段被更新时,才会触发此触发器BEGIN    SET NOCOUNT ON;    select top 1 * from xybase  --执行的操作end 另外再补充一句:insert和update的数据都会保存在临时表中,所以使用inserted可以取出这些数据,删除…
一.在要执行的sql server数据库a中执行如下脚本,创建存储过程sp_textcopy /* 将二进制文件导入.导出到数据库相应字段列中 */ CREATE PROCEDURE sp_textcopy( @login varchar (1000),              --用户名 @password varchar (1000),       --密码 @dbname varchar (1000),         --数据库名 @tbname varchar (1000),    …
// 新增之前判断表是否存在 IF NOT EXISTS (SELECT NAME FROM SYSOBJECTS WHERE ID = OBJECT_ID('tb_MessageHistory'))    BEGIN   CREATE TABLE tb_MessageHistory(    LSH VARCHAR(36) NOT NULL  PRIMARY KEY,       -- 流水号     appId VARCHAR(36) NOT NULL,          -- appId  …
--比如说要判断表A中的字段C是否存在两个方法: 一, IF EXISTS ( FROM SYSOBJECTS T1 INNER JOIN SYSCOLUMNS T2 ON T1.ID=T2.ID WHERE T1.NAME='A' AND T2.NAME='C' ) PRINT '存在' ELSE PRINT '不存在' 二, 短小精悍,可谓精典 IF COL_LENGTH('A', 'C') IS NOT NULL PRINT N'存在' ELSE PRINT N'不存在' 方法一: sel…
--为字段添加注释 --Eg. execute sp_addextendedproperty 'MS_Description','字段备注信息','user','dbo','table','字段所属的表名','column','添加注释的字段名'; execute sp_addextendedproperty 'MS_Description','add by liyc. 诊断类别码','user','dbo','table','DiagRecord','column','DiagTypeCode…
最近修改了数据库表结构,数据同步的时候出了问题,发现很多数据明明已经修改,但是通过视图筛选出来的还是原来的数据,所以怀疑应该是视图缓存了数据,在园子里找到下面的博文,在这里做个记录备忘. 原文链接:http://www.cnblogs.com/yashen/archive/2004/12/23/81000.html 我们在使用SqlServer时经常遇到这种情况,当修改某个表的结构后,相关的视图就不对了而导致程序错误,因此就有个下面这个存储过程. CREATE PROCEDURE Refresh…
DECLARE @tableName NVARCHAR(MAX);SET @tableName = N'UserIntegralExchange';   --表名!!! SELECT CASE WHEN col.colorder = 1 THEN obj.name ELSE '' END AS 表名 , col.colorder AS 序号 , col.name AS 列名 , ISNULL(ep.[value], '') AS 列说明 , t.name AS 数据类型 , col.length…
--sql server给表加说明: --banner EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'Banner' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'Banner' --News 资讯 EXEC sys.sp_addextendedproperty @name=N'MS_Descript…
关于SQL Server数据库的一切信息都保存在它的系统表格里.我怀疑你是否花过比较多的时间来检查系统表格,因为你总是忙于用户表格.但是,你可能需要偶尔做一点不同寻常的事,例如数据库所有的触发器.你可以一个一个地检查表格,但是如果你有500个表格的话,这可能会消耗相当大的人工. 这就让sysobjects表格有了用武之地.虽然我不建议你更新这个表格,但是你当然有权对其进行审查. sysobjects 表 在数据库内创建的每个对象(约束.默认值.日志.规则.存储过程等)在表中占一行.只有在 tem…