本篇文章為大家展示了SQL中CRL函數(shù)如何使用,內(nèi)容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。
成都創(chuàng)新互聯(lián)專注于泰山企業(yè)網(wǎng)站建設(shè),響應(yīng)式網(wǎng)站開發(fā),商城開發(fā)。泰山網(wǎng)站建設(shè)公司,為泰山等地區(qū)提供建站服務(wù)。全流程按需制作網(wǎng)站,專業(yè)設(shè)計,全程項目跟蹤,成都創(chuàng)新互聯(lián)專業(yè)和態(tài)度為您提供的服務(wù)
在SQL中使用CRL函數(shù)
實驗?zāi)繕?biāo):
1. 在SQL中創(chuàng)建CRL函數(shù),使之能夠向指定的計算機發(fā)送消息
實驗步驟
2. 在VS中創(chuàng)建類發(fā)送消息的類
3. 將以下代碼黏貼進去
using System;
using System.Collections.Generic;
using System.Text;
using System.Net.Sockets;
using System.IO;
namespace ClassLibrary1
{
public class Class1
{
public static string classscoket(string IPaddress, string mes)
{
string msg = mes;
string IPadd = IPaddress;
TcpClient tcpc = new TcpClient(IPadd, 5656);
NetworkStream tcpStream = tcpc.GetStream();
StreamWriter reqStreamW = new StreamWriter(tcpStream);
reqStreamW.Write(msg);
reqStreamW.Flush();
tcpStream.Close();
tcpc.Close();
return (mes);
}
}
}
點擊“生成ClassLibrary“
4. 新建接收消息的客戶端
添加引用
using System;
using System.Collections.Generic;
using System.Text;
using System.Net.Sockets;
using System.Windows.Forms;
namespace MessClient1
{
class Program
{
static void Main(string[] args)
{
try
{
TcpListener tcpl = new TcpListener(5656);
tcpl.Start();
while (true)
{
Socket s = tcpl.AcceptSocket();
Byte[] stream = new Byte[80];
int i = s.Receive(stream);
string message = System.Text.Encoding.UTF8.GetString(stream);
MessageBox.Show(message);
}
}
catch (System.Security.SecurityException)
{
MessageBox.Show("防火墻安全錯誤!", "錯誤",
MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
}
catch (Exception)
{
}
}
}
}
5. 在中的配置
exec sp_configure 'clr enable',1
go
reconfigure
go
use personnel
go
alter database personnel set trustworthy on
go --在數(shù)據(jù)庫中引入dll
create assembly [System.Net.Sockets] from 'C:\Documents and Settings\Administrator\My Documents\Visual Studio 2005\Projects\ClassLibrary1\ClassLibrary1\bin\Debug\ClassLibrary1.dll'
with permission_set=unsafe
可以看到注冊的程序集
go --創(chuàng)建函數(shù)
create function dbo.crlHelloWord
(
@ipaddress as nvarchar(100),
@message as nvarchar(100)
)
returns nvarchar(200)
as EXTERNAL NAME [System.Net.Sockets].[ClassLibrary1.Class1].classscoket
運行客戶端程序,在SQL執(zhí)行以下命令,可以發(fā)現(xiàn)該函數(shù)能夠想客戶端發(fā)送消息
select dbo.crlHelloWord('10.7.10.199','你已經(jīng)刪除了條記錄')
上述內(nèi)容就是SQL中CRL函數(shù)如何使用,你們學(xué)到知識或技能了嗎?如果還想學(xué)到更多技能或者豐富自己的知識儲備,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。