电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

如何:創(chuàng)建和運(yùn)行 CLR SQL Server 用戶定義的函數(shù)

瀏覽:165日期:2023-11-07 10:49:49

通過(guò)向 SQL Server 項(xiàng)目添加“用戶定義函數(shù)”創(chuàng)建用戶定義的 SQL 函數(shù)。部署成功后,可調(diào)用并執(zhí)行用戶定義的函數(shù)。

注意; 在默認(rèn)情況下,Microsoft SQL Server 中關(guān)閉了公共語(yǔ)言運(yùn)行庫(kù) (CLR) 集成功能。必須啟用該功能才能使用 SQL Server 項(xiàng)目項(xiàng)。若要啟用 CLR 集成,請(qǐng)使用 sp_configure 存儲(chǔ)過(guò)程的“啟用 clr”選項(xiàng)。有關(guān)更多信息,請(qǐng)參見(jiàn)啟用 CLR 集成。注意; 顯示的對(duì)話框和菜單命令可能會(huì)與幫助中的描述不同,具體取決于您現(xiàn)用的設(shè)置或版本。若要更改設(shè)置,請(qǐng)?jiān)凇肮ぞ摺辈藛紊线x擇“導(dǎo)入和導(dǎo)出設(shè)置”。有關(guān)更多信息,請(qǐng)參見(jiàn) Visual Studio 設(shè)置。

創(chuàng)建用戶定義的 SQL Server 函數(shù)使用 Visual Studio 建立和部署此函數(shù)打開(kāi)一個(gè)現(xiàn)有的“SQL Server 項(xiàng)目”,或者創(chuàng)建一個(gè)新項(xiàng)目。有關(guān)更多信息,請(qǐng)參見(jiàn)如何:創(chuàng)建 SQL Server 項(xiàng)目。

從“項(xiàng)目”菜單中選擇“添加新項(xiàng)”。

在“添加新項(xiàng)”對(duì)話框 中選擇“用戶定義函數(shù)”。

鍵入新用戶定義函數(shù)的“名稱”。

添加執(zhí)行用戶定義函數(shù)時(shí)運(yùn)行的代碼。請(qǐng)參見(jiàn)下面的第一個(gè)示例。

注意; C++ 示例在編譯時(shí)必須使用 /clr:safe 編譯器選項(xiàng)。

對(duì)于 Visual Basic 和 Visual C#,在“解決方案資源管理器”中,打開(kāi)“TestScripts”文件夾,然后雙擊“Test.sql”文件,以打開(kāi)它進(jìn)行編輯。添加執(zhí)行您的用戶定義函數(shù)的代碼。請(qǐng)參見(jiàn)下面的第二個(gè)示例。

對(duì)于 Visual C++,在“解決方案資源管理器”中雙擊“debug.sql”文件,以打開(kāi)它進(jìn)行編輯。添加執(zhí)行您的用戶定義函數(shù)的代碼。請(qǐng)參見(jiàn)下面的第二個(gè)示例。

將用戶定義函數(shù)部署到 SQL Server。有關(guān)更多信息,請(qǐng)參見(jiàn)如何:將 SQL Server 項(xiàng)目項(xiàng)部署到 SQL Server 中。

按 F5 通過(guò)在 SQL Server 上執(zhí)行用戶定義的函數(shù)來(lái)對(duì)其進(jìn)行調(diào)試。

下面的代碼示例創(chuàng)建用戶定義的將價(jià)格作為參數(shù)的標(biāo)量函數(shù) addTax,添加銷售稅并返回價(jià)格和銷售稅的加和。

創(chuàng)建該函數(shù)后,將其部署到 SQL Server。有關(guān)更多信息,請(qǐng)參見(jiàn)如何:將 SQL Server 項(xiàng)目項(xiàng)部署到 SQL Server 中

Visual Basic 復(fù)制代碼Imports System.Data.SqlTypesImports Microsoft.SqlServer.Server

Partial Public Class UserDefinedFunctions

Public Const SALES_TAX As Double = 0.086

<SqlFunction()> _ Public Shared Function addTax(ByVal originalAmount As SqlDouble) As SqlDouble

Dim taxAmount As SqlDouble = originalAmount * SALES_TAX

Return originalAmount + taxAmount End FunctionEnd ClassC# 復(fù)制代碼using System.Data.SqlTypes;using Microsoft.SqlServer.Server;

public partial class UserDefinedFunctions{ public const double SALES_TAX = .086;

[SqlFunction()] public static SqlDouble addTax(SqlDouble originalAmount) { SqlDouble taxAmount = originalAmount * SALES_TAX;

return originalAmount + taxAmount; }}C++ 復(fù)制代碼#include 'stdafx.h'

#using <System.dll>#using <System.Data.dll>#using <System.Xml.dll>

using namespace System;using namespace System::Data;using namespace System::Data::Sql;using namespace System::Data::SqlTypes;using namespace Microsoft::SqlServer::Server;

// In order to debug your Aggregate, add the following to your debug.sql file://// SELECT dbo.addTax(10)//

public ref class UserDefinedFunctions{public: static initonly double SALES_TAX = 0.086;

[SqlFunction()] static SqlDouble AddTax(SqlDouble originalAmount) { SqlDouble taxAmount = originalAmount * SALES_TAX;

return originalAmount + taxAmount; }};

向您的項(xiàng)目中 TestScripts 文件夾中的 Test.sql(在 Visual C++ 中為 debug.sql)文件,添加用于測(cè)試用戶定義函數(shù)的代碼。例如,若要測(cè)試此函數(shù),請(qǐng)使用查詢,如“SELECT dbo.addTax(10)”。您應(yīng)見(jiàn)到返回的值“10.86”。

復(fù)制代碼SELECT dbo.addTax(10)

主站蜘蛛池模板: 岸电电源-60HZ变频电源-大功率变频电源-济南诚雅电子科技有限公司 | 南京欧陆电气股份有限公司-风力发电机官网 | 探伤仪,漆膜厚度测试仪,轮胎花纹深度尺厂家-淄博创宇电子 | 水篦子|雨篦子|镀锌格栅雨水篦子|不锈钢排水篦子|地下车库水箅子—安平县云航丝网制品厂 | 全自动真空上料机_粉末真空上料机_气动真空上料机-南京奥威环保科技设备有限公司 | 智能电表|预付费ic卡水电表|nb智能无线远传载波电表-福建百悦信息科技有限公司 | 海水晶,海水素,海水晶价格-潍坊滨海经济开发区强隆海水晶厂 | 短信通106短信接口验证码接口群发平台_国际短信接口验证码接口群发平台-速度网络有限公司 | 抓斗式清污机|螺杆式|卷扬式启闭机|底轴驱动钢坝|污水处理闸门-方源水利机械 | 北京租车公司_汽车/客车/班车/大巴车租赁_商务会议/展会用车/旅游大巴出租_北京桐顺创业租车公司 | 壹作文_中小学生优秀满分作文大全 | 百度爱采购运营研究社社群-店铺托管-爱采购代运营-良言多米网络公司 | 贝壳粉涂料-内墙腻子-外墙腻子-山东巨野七彩贝壳漆业中心 | 苗木价格-苗木批发-沭阳苗木基地-沭阳花木-长之鸿园林苗木场 | 泥沙分离_泥沙分离设备_泥砂分离机_洛阳隆中重工机械有限公司 | 振动传感器,检波器-威海广达勘探仪器有限公司 | 步进_伺服_行星减速机,微型直流电机,大功率直流电机-淄博冠意传动机械 | 学校用栓剂模,玻璃瓶轧盖钳,小型安瓿熔封机,实验室安瓿熔封机-长沙中亚制药设备有限公司 | 清水混凝土修复_混凝土色差修复剂_混凝土色差调整剂_清水混凝土色差修复_河南天工 | 北京公寓出租网-北京酒店式公寓出租平台 | 长春网站建设,五合一网站设计制作,免费优化推广-长春网站建设 | 超声波乳化机-超声波分散机|仪-超声波萃取仪-超声波均质机-精浩机械|首页 | 中医中药治疗血小板减少-石家庄血液病肿瘤门诊部 | 京马网,京马建站,网站定制,营销型网站建设,东莞建站,东莞网站建设-首页-京马网 | 建大仁科-温湿度变送器|温湿度传感器|温湿度记录仪_厂家_价格-山东仁科 | 新中天检测有限公司青岛分公司-山东|菏泽|济南|潍坊|泰安防雷检测验收 | 医用空气消毒机-医用管路消毒机-工作服消毒柜-成都三康王 | 上海电子秤厂家,电子秤厂家价格,上海吊秤厂家,吊秤供应价格-上海佳宜电子科技有限公司 | TwistDx恒温扩增-RAA等温-Jackson抗体-默瑞(上海)生物科技有限公司 | 成都装修公司-成都装修设计公司推荐-成都朗煜装饰公司 | 千斤顶,液压千斤顶-力良企业,专业的液压千斤顶制造商,shliliang.com | 示波器高压差分探头-国产电流探头厂家-南京桑润斯电子科技有限公司 | 行业分析:提及郑州火车站附近真有 特殊按摩 ?2025实地踩坑指南 新手如何避坑不踩雷 | 窖井盖锯圆机_锯圆机金刚石锯片-无锡茂达金刚石有限公司 | 冷热冲击试验箱_温度冲击试验箱价格_冷热冲击箱排名_林频厂家 | 深圳市源和塑胶电子有限公司-首页 | 建筑资质代办-建筑企业资质代办机构-建筑资质代办公司 | 上海网站建设-上海网站制作-上海网站设计-上海做网站公司-咏熠软件 | 板材品牌-中国胶合板行业十大品牌-环保板材-上海声达板材 | SRRC认证_电磁兼容_EMC测试整改_FCC认证_SDOC认证-深圳市环测威检测技术有限公司 | 行星搅拌机,双行星搅拌机,动力混合机,无锡米克斯行星搅拌机生产厂家 |