SqlServer知识点
在公司天天写Sql写,存储过程,但是公司工具模板把创建的语句都写好了,只负责写里面的逻辑,久而久之,创建语句都不会写了。还有一些知识点都很模糊,平常使用的时候都不清楚,稀里糊涂的就在用。在这里整理一下。巩固复习。
一.存储过程。
1.存储过程类似编程语言的里面的函数,方法。将Sql语句封装在里面,方便调用。
2.首先看下创建无参数存储过程语法。
CREATE PROCEDURE MyProTest ASSELECT * FROM dbo.saUser GO
创建有参数的存储过程
CREATE PROCEDURE MyProTest (@ID INT=0 ) WITH ENCRYPTION /* { RECOMPILE | ENCRYPTION | RECOMPILE , ENCRYPTION } ]*/ ASSELECT * FROM dbo.saUser GO
这个地方后面WITH后面跟的值要说明下
a.RECOMPILE 表明 SQL Server 不会缓存该过程的计划,该过程将在运行时重新编译。在使用非典型值或临时值而不希望覆盖缓存在内存中的执行计划时,请使用 RECOMPILE 选项。
b.ENCRYPTION 表示 SQL Server 加密 syscomments 表中包含 CREATE PROCEDURE 语句文本的条目。使用 ENCRYPTION 可防止将过程作为 SQL Server 复制的一部分发布。 说明 在升级过程中,SQL Server 利用存储在 syscomments 中的加密注释来重新创建加密过程。 说白了就是就是对存储过程进行加密。这个我经常用,上面以恶就不经常用了,在这里了解一下。
3.执行存储过程
EXEC dbo.MyProTest @ID=1
4.删除存储过程
DROP PROC dbo.MyProtest
删除语法简单说一下。不管删除表,还是存储过程,还是视图,还是函数。删除语法都是 Drop 关键字 +类型+名称。
二.函数
1.创建语法
a.返回Nvarchar类型参数
CREATE FUNCTION Test ---创建语法 Create关键字 +类型 +名称 (@iIden INT ---参数 ) RETURNS NVARCHAR(50) --定义返回类型 WITH ENCRYPTION AS BEGINDECLARE @sUserName NVARCHAR(50) SELECT @sUserName=A.sUserNameFROM dbo.saUser A(NOLOCK)WHERE A.iIden=@iIdenRETURN @sUserName END
b.返回表变量的函数
CREATE FUNCTION Test ---创建语法 Create关键字 +类型 +名称 (@iIden INT ---参数 ) RETURNS @Table TABLE(iiden INT,sName NVARCHAR(50) ) WITH ENCRYPTION AS BEGINDECLARE @sUserName NVARCHAR(50)INSERT INTO @TableSELECT A.iIden,A.sUserNameFROM dbo.saUser A(NOLOCK)WHERE A.iIden=@iIdenRETURN END
转载于:https://www.cnblogs.com/DingKing/p/8267109.html
SqlServer知识点相关推荐
- Sqlserver中一直在用又经常被忽略的知识点一
已经有快2个月没有更新博客了,实在是因为最近发生了太多的事情,辞了工作,在湘雅医院待了一个多月,然后又新换了工作...... 在平时的工作中,Sqlserver中许多知识点是经常用到的,但是有时候我们 ...
- mysql存储csv文件_MySQL 查询结果保存为CSV文件
MySQL支持将查询结果直接导出为文本格式,格式如下: into outfile '导出的目录和文件名' 指定导出的目录和文件名 fields terminated ...
- 干货!sqlserver数据库所有知识点总结整理,含代码(挺全的)
01 T-SQL案例整理 已知有一个表:该表的字段有:id,name,date,gradeid,email,表名为table_name,按要求实现下面内容. 1.插入一条记录: insert into ...
- SQLServer存储过程知识点整合
一.SQL存储过程使用 ----重命名存储过程-S-- --sp_rename newProc,reNewProc ----重命名存储过程-E-- ----删除存储过程-S-- --drop newP ...
- sqlserver取模_sqlserver取模_SqlServer基础知识点(T-SQL语言基础)
DML(数据操作语言) INSERT.UPDATE.DELETE 等 插入.修改和删除数据库中的数据 - 插入数据 ## 插入数据语法:(字符数据需要单引号,数值数据不需要单引号.) INSERT I ...
- 使用SQLServer 2008的CDC功能实现数据变更捕获
原文: 使用SQLServer 2008的CDC功能实现数据变更捕获 最近由于工作需要,研究了一下2008 CDC功能,觉得还不错,下面整理了一下研究过程,虽然比较粗略,但是基本上能用了,如果有补充请 ...
- .net与数据库知识点
<%服务器方法;%> (调用服务器方法,要写;) <=%服务器方法%> (有返回值输出,不能写;) public ActionResult Index(int id = 0) ...
- python为啥这么受欢迎_Python为什么这么受欢迎?原因竟在于它的10个知识点
Python被誉为全世界高效的编程语言,同时也被称作是"胶水语言".Python 是一个高层次的结合了解释性.编译性.互动性和面向对象的脚本语言.设计具有很强的可读性,相比其他语言 ...
- python快速编程入门例题-Python快速编程入门,打牢基础必须知道的11个知识点 !...
Python被誉为全世界高效的编程语言,同时也被称作是"胶水语言",那它为何能如此受欢迎,下面我们就来说说Python入门学习的必备11个知识点,也就是它为何能够如此受欢迎的原因. ...
最新文章
- php中finally不能用,php-什么时候以及为什么`finally`有用?
- basler相机 ip linux,Linux环境中连接Basler相机(Pylon软件的安装),ROS环境中连接Basler相机...
- Laravel 服务提供者和门面模式
- 财务管理(Finance Management)
- 数学的威力:一个方程提升中国卫星图像质量30%
- uncode移动后端云【www.uncode.cn】--简介
- Python Imaging Library: Script(脚本)
- UDS - 诊断协议和协议栈介绍
- 量子力学计算机原理,量子力学的基本原理
- 知道为什么HTML页面在电脑上和手机上的布局不同吗?这篇文章带你走进Element UI的简单适配
- 科目二 后视镜 调节
- 英语常用口语1000句
- 盘点那些有趣的AR应用
- AUTOSAR I-PDU的理解以及I-PDU的Callout
- vscode 添加新建文件夹快捷键 (配置 when 属性)
- wx.createSelectorQuery() 获取节点信息 获取不到解决方法
- webservice返回值为Map类型的处理方法
- php 警告提示框,js弹出对话框(消息框、警告框)
- 计算机数字媒体计数专业好就业吗,2019数字媒体技术专业就业形势和就业方向分析...
- 嘀,你有一份1024礼物待查收!
热门文章
- CodeForces 757B Bash's Big Day(线性筛)
- [na]华为acl(traffic-filter)和dhcp管理
- 使用Myeclipse完成Hibernate的逆向工程
- 字符串字符和数字分割
- UVA10236 斐波那契素数
- Kali 2.0 采用ssh连接登陆
- 单片机全局有必要封装_MCU-C程序基本编程规范(转)
- 很全的sas基础知识
- java md2_java中加密的实现方法(MD5,MD2,SHA)
- 机器人峰会王伟_【“峰”景独好】大美中国探春中国机器人峰会举办地——浙江宁波余姚...