易截截图软件、单文件、免安装、纯绿色、仅160KB

SQL Server CLR全功略之四

CLR可以实现DML和DDL两种触发形式,但是本人一般不建议使用CLR的触发器,主要是考虑到效率问题。比如我们使用trigger来实现发mail等操作时,就要考虑pop3或是smtp等待时间,因为trigger本事就是个事务,也就是说,在smtp等待时间也算在了整个事务中,这样就会大大影响效率。
1.CLR DML触发器
DML指的是数据操作语言,也就是通常的insert,update和delete操作。这个触发器主要实现在对pubs数据库中的author表进行insert,update,delete时,会显示相应的操作名称。
///
    /// 把insert,update,delete操作都显示出来
    ///
    [Microsoft.SqlServer.Server.SqlTrigger(
        Name = "UF_DML_Trigger",
        Target = "dbo.authors",
        Event = "FOR INSERT, UPDATE, DELETE")]
    public static void UF_DML_Trigger()
    {
        switch (SqlContext.TriggerContext.TriggerAction)
        {
            case TriggerAction.Insert:
                SqlContext.Pipe.Send("Trigger Insert");
                break;
            case TriggerAction.Update:
                SqlContext.Pipe.Send("Trigger Update");
                break;
            case TriggerAction.Delete:
                SqlContext.Pipe.Send("Trigger Delete");
              


相关文档:

防sql注入类

 using System;
using System.Text.RegularExpressions;
using System.Web;
namespace FSqlKeyWord
{
/**//**//**//// <summary>
/// SqlKey 的摘要说明。
/// </summary>
public class SqlKey
{
private HttpRequest request;
//private const string St ......

SQL中的REPLACE替换字符函数


SQL中的REPLACE替换字符函数的用法(使之支持text/ntext)
语法
REPLACE ( original-string, search-string, replace-string )
参数
如果有某个参数为 NULL,此函数返回 NULL。
original-string     被搜索的字符串。可为任意长度。
search-string     要搜索并被 repl ......

PowerShell笔记(三):调用MS SQL数据库

试了一把PowerShell访问数据库,跟用C#写几乎没任何区别~
为了简单起见,代码有点丑,不用太深究
$ConnString = "server=_SERVER_;database=_DATABASE_;user id=_UID_;password=_PWD_";
$db = New-Object System.Data.SqlClient.SqlConnection($ConnString);
$db.Open();
$Sql = "select top 10 * from sys.objects wh ......

修改SQL数据库的名称


其实在修改数据库名称之前,如果有用户连接到数据库的话会造成数据库重命名失败,可以先执行
select spid
from master.dbo.sysprocesses
where dbid=db_id('OldDbName')
结果集中显示的是当前连接到数据库OldDbName的连接
比如结果是
79
81
当然,实际值应该不是这两个
然后执行
kill 79
kill 81
关闭已建立 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号