MsSqlServer 表修改监听

加几个公共属性:
string connString = @"xyz";
        System.Data.SqlClient.SqlConnection conn = null;
        System.Data.SqlClient.SqlCommand command = null;
加一个开始的按钮:
    conn = new System.Data.SqlClient.SqlConnection(connString);
            command = conn.CreateCommand();
            command.CommandText = "select code,name,spec from dbo.medicine where code='07002'";

            SqlDependency.Start(connString);//启动 
            GetData();

加一个方法:

private void GetData()
        {


            command.Notification = null;//清除  
            SqlDependency dependency = new SqlDependency(command);//设置通知  对像每一次都要NEW
            dependency.OnChange += new OnChangeEventHandler(dependency_OnChange);//事件每次都要加
            using (SqlDataAdapter adapter = new SqlDataAdapter(command)) //查询数据  
            {
                System.Data.DataSet ds = new DataSet();
                adapter.Fill(ds, 0, 3, "test");
                dataGridView1.DataSource = ds.Tables["test"];
            }

        }

加一个响应时件:

     if (this.InvokeRequired)
            {
                this.Invoke(new OnChangeEventHandler(sqlDependency_OnChange), new object[] { sender, e });
            }
            else
            {
                SqlDependency dependency = (SqlDependency)sender;
                dependency.OnChange -= sqlDependency_OnChange;
               
                GetData();
            }  


也可以不用事件 当然,这个对像要设为全局:

    if (dependency != null && dependency.HasChanges)
            {
                GetData();
            }




  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值