新建乙個sql clr資料庫專案,來對資料庫的變化進行監聽,如:當有資料發生變化(增刪改), sql clr資料庫專案就會獲得通知,此時我們在開啟乙個socket,將資料庫變化的訊息傳送到iis伺服器,iis伺服器然後再發布出資料庫已傳送變化的訊息,此時連線到伺服器的客戶端就會收到通知,就會根據伺服器發來的表名,去決定是否需要重新獲取資料,已達到客戶端的資料是實時資料的效果:
第一步:
第二:
using system;
using system.data;
using system.data.sqlclient;
using microsoft.sqlserver.server;
using system.text.regularexpressions;
using system.web.services;
using system.net.sockets;
using system.threading;
using system.net;
using system.text;
using system.collections.generic;
using system.runtime.remoting.contexts;
public partial class triggers}}
//static socket serversocket;
// static socket clientsocket;
// static thread thread;
//public static void startsocket()
//));
// thread.start();
// }
//}//public static void dowork(socket s, byte buffer)
//// }
// catch
//
//}public bool isemailaddress(string s)
}
第三步:為了能使用socket,需要為程式集簽名:
第四步:
在資料庫中執行:
use master
create asymmetric key sqlclrtestkey1
from executable file = 'c:\sqlserverprojectdemo.dll'
create login sqlclrtestlogin from asymmetric key sqlclrtestkey
grant external access assembly to sqlclrtestlogin;
go
注意:最好不要直接使用debug目錄,可以將你的專案生成的dll拷貝到另外的地方。如:
c:\sqlserverprojectdemo.dll
f5啟動部署:
成功後:
在資料庫中執行
insert into users(username,pass) values('admin','admin')
update users set username='哈哈哈' where username='admin'
然後在你的socket端的伺服器上就會收到 你傳送過去的資料。
using system;
using system.collections.generic;
using system.linq;
using system.text;
namespace sqlserverprojectdemo
public tablenotifyprotocol getmodel(byte buffer)
private string getstring(string s,string key)}}
如何通過python連線sqlserver
coding utf 8 import pymssql server 127.0.0.1 連線伺服器位址 user sqluser 連線帳號 password password 連線密碼 with pymssql.connect server,user,password,yourdatabase c...
c 使用HttpListener監聽HTTP請求
最近在專案上需要與第三方系統對接,對方會通過http請求定時推送資料,因此需要在專案中新增監聽http請求的功能,查閱了相關資料,使用system.net下的httplistener實現此功能。基本變數private listeneruri private httplistener listener...
詳解MFC使用ADO連線SQLServer資料庫
vc用ado訪問資料庫全攻略,介紹了vc用ado來訪問資料庫的各個物件及各方法,很經典,也很實用,很值得一看。正文一 ado概述 ado是microsoft為最新和最強大的資料訪問範例 ole db 而設計的,是乙個便於使用的應用程式層介面。ado 使您能夠編寫應用程式以通過 ole.db 提供者訪...