sqlDependency监控数据库数据变化,自动通知

该示例展示了如何利用SqlDependency类监控数据库中的数据变化,当数据表[TestTable]发生更改时,程序会自动触发事件并更新数据显示。首先启动SqlDependency服务,然后设置 SqlCommand 查询并添加依赖,当数据变更时触发onChange事件,重新加载数据。
摘要由CSDN通过智能技术生成
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Configuration;
using System.Data.SqlClient;
using System.Data;

namespace Sample2
{
    class Program
    {
        private static string _connStr;

        static void Main(string[] args)
        {
            _connStr = "Data Source=localhost;User Id=sa;Password=xxx;Database=xxx;Pooling=true;Max Pool Size=600;Min Pool Size=0;";
            SqlDependency.Start(_connStr);//传入连接字符串,启动基于数据库的监听
            UpdateGrid();
            Console.Read();
        }

        private static void UpdateGrid()
        {
            using (SqlConnection connection = new SqlConnection(_connStr))
            {
                connection.Open();
                //依赖是基于某一张表的,而且查询语句只能是简单查询语句,不能带top或*,同时必须指定所有者,即类似[dbo].[]
                using (SqlCommand command = new SqlCommand("select D_Id,D
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
在 IDEA 中向 SQL Server 数据库插入数据,一般可以分为以下几个步骤: 1. 加载 SQL Server JDBC 驱动。您需要下载 SQL Server JDBC 驱动并将其添加到您的项目中。如果您使用的是 Maven 或 Gradle 等构建工具,可以在 pom.xml 或 build.gradle 文件中添加相应的依赖。例如,对于 Maven 项目,可以添加以下依赖: ```xml <dependency> <groupId>com.microsoft.sqlserver</groupId> <artifactId>mssql-jdbc</artifactId> <version>9.2.1.jre15</version> <!-- 替换为最新版本 --> </dependency> ``` 2. 配置连接信息。您需要指定 SQL Server 数据库的连接信息,例如数据库 URL、用户名和密码等。如果您的数据库在本地,可以使用以下 URL: ``` jdbc:sqlserver://localhost:1433;databaseName=your_database_name ``` 其中,localhost 是 SQL Server 数据库所在的主机名或 IP 地址,1433 是 SQL Server 数据库的默认端口号,your_database_name 是您要连接的数据库名称。如果您的数据库在云端,您需要根据云平台的要求进行相应的配置。 3. 建立数据库连接。使用 DriverManager 类的 getConnection() 方法来建立数据库连接,例如: ```java String url = "jdbc:sqlserver://localhost:1433;databaseName=your_database_name"; String username = "your_username"; String password = "your_password"; Connection conn = DriverManager.getConnection(url, username, password); ``` 4. 准备 SQL 语句。使用 PreparedStatement 类来准备 SQL 语句,并设置参数。例如,以下是一个插入数据SQL 语句: ```sql INSERT INTO your_table (col1, col2) VALUES (?, ?) ``` 您可以使用 PreparedStatement 类的 setXXX() 方法来设置参数,例如: ```java String sql = "INSERT INTO your_table (col1, col2) VALUES (?, ?)"; PreparedStatement stmt = conn.prepareStatement(sql); stmt.setString(1, "value1"); stmt.setInt(2, 123); ``` 其中,1 和 2 分别代表第一个和第二个参数的位置。 5. 执行 SQL 语句。使用 PreparedStatement 类的 executeUpdate() 方法来执行 SQL 语句,并插入数据。例如: ```java stmt.executeUpdate(); ``` 6. 关闭 PreparedStatement 和数据库连接。使用 PreparedStatement 类的 close() 方法来关闭 PreparedStatement 对象,使用 Connection 类的 close() 方法来关闭数据库连接。例如: ```java stmt.close(); conn.close(); ``` 这样就可以向 SQL Server 数据库插入数据了。注意,如果您需要插入多条数据,可以重复执行步骤 4、5 和 6,每次设置不同的参数值即可。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

smartsmile2012

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值