sql 存储过程和函数
最近在学习数据库,上课过程中总是在许多知识点有或多或少的问题,对于这些问题的产生,大概是由于我听课习惯所造成的吧,好啦,废话不多说,开始今天到主题吧。
首先介绍SQL的存储过程,先来给它定义,存储过程是由过程化SQL语句书写的过程,这个过程经过编译和优化后存储在数据库服务器中,因此称它为存储过程,使用是只需要调用即可
优点:
1、运行效率高,因为它不像解释执行的SQL语句那样在提出操作请求的时候,才开始进行语法分析和优化工作。它提供了在服务器端快速执行SQL语句的有效途径。
2、存储过程降低了客户机和服务器之间的通信量。如果用到高级语言(php\python) ,应该也是可以的降低通信量的。
3、方便维护,有利于集中管理
语法:
CREAETE PROCEDURE 「 NAME 」(过程名)
@ARGUMENT(参数)
AS
<过程化SQL>
存储过程的执行或者调用:
EXEC NAEM(过程名) ' @ARGUMENT '
存储过程的删除:
drop 过程名
数据库编程里的函数。在这里说的函数我们也称为自定义函数,因为是用户自己使用过程化SQL设计定义的。函数和存储过程类似,都是持久性存储模块,所以定义过程也类似
不同之处是函数必须指定返回的类型。
语法:
第一种返回的什整个table:
CREATE FUNCTION 「NAME」(@INPUT CHAR(10))
RETURN TABLE
AS
RETURN ( <过程化SQL语句> )
第二种返回想要返回到数据:
CREATE FUNCTION 「NAME」(@INPUT CHAR(10))
RETURN @TABLENAME TABLE
( 返回数据名 返回数据类型 )
AS
BEGIN
INSERT @TABLENAME
<过程化SQL语句>
RETURN
END
修改函数:ALTER FUCNTION 已存在的函数名
函数的执行:
SELECT 函数名 (' @INPUT ')
删除用户自定义函数:
drop 函数名
以上是在sql server 2008的环境,别问我为什么用这个数据库,学校只有这种数据库啦,2333333。
转载于:https://www.cnblogs.com/evenGO/p/9233298.html
sql 存储过程和函数相关推荐
- SQL存储过程和函数
SQL存储过程: 由来:在具体应用中,一个完整的操作会包含多条SQL语句,在执行过程中需要根据前面SQL语句的执行结果有选择的执行后面的SQL语句.因此,mysql提供了数据库对象存储过程和函数. 定 ...
- SQL存储过程与函数
目录 1. 存储过程概述 1.1 理解 1.2 分类 2. 创建存储过程 3. 调用存储过程 3.1 调用格式 4.存储函数的使用 4.1 语法分析 4.2 调用存储函数 4.4 对比存储函数和存储过 ...
- SQL 存储过程 procedure 讲解+代码实例
文章目录 1. 存储过程概述 2. 创建存储过程 create procedure 2.1. 参数 in.out.inout 3. 调用存储过程 call 4. 查看存储过程 4.1. 查看存储过程的 ...
- SQL Server中的CLR编程——用.NET为SQL Server编写存储过程和函数
很早就知道可以用.NET为SQL Server2005及以上版本编写存储过程.触发器和存储过程的,不过之前开发的系统要么因为历史原因用的是SQL2000要么根本用不着在SQL Server中启用CLR ...
- 删除数据库中所有存储过程和函数的sql语句
-删除数据库中所有存储过程和函数的sql语句 USE [TmpDb] SELECT IDENTITY( INT,1,1 ) flag , [name] NAMES,xtype INT ...
- jpa 自定义sql if_跟飞哥学编程:SQL入门-:函数、存储过程和触发器
最后不要忘记:SQL是一种结构化(Structured)的语言(Language),所以它具有 编程语言的特性 声明变量和赋值 所谓变量,可以是看成一个存储数据的容器,所有它里面存储的值是可以变化的. ...
- oracle字段公式怎么执行,Oracle 在存储过程或函数中执行字符串sql PDF 下载
主要内容: 有时,我们需要在存储过程或函数中根据条件拼凑一些sql字符串语句,然后再执行拼凑后的sql字符串,如何做到呢? 参考以下代码: FUNCTION CALCULATE_TARGET_SCOR ...
- mysql 存储过程 sql变量_SQL基础-变量 存储过程和函数
一.变量 1.系统变量:全局变量.会话变量 说明:由系统提供,属于服务器层面.如果是全局级别,则需要加 global,如果是会话级别,则需加 session,如果不写,则默认 session.全局变量 ...
- 【SQL】之存储过程与函数
[SQL]之存储过程与函数 存储过程 类型1:无参数无返回值 类型2:带out 类型3:带in 类型4:带in和out 类型5:带inout 存储函数 存储过程和存储函数对比 存储过程和函数的查看,修 ...
最新文章
- UE5真实环境设计入门学习教程
- 设计模式09: Decorator 装饰模式(结构型模式)
- java实现续打功能_浅谈报表工具的打印方案
- 火币网的macd怎么算的_黄金投资中MACD的计算方式
- 微服务架构何去何从?
- Python这些位运算的妙用,绝对让你大开眼界
- oracle 索引并行 hint,并行HINT并不一定起作用。
- java泛型好处及案例
- vue echarts数据变化重新渲染_vue实例创建及数据挂载渲染
- cad字体安装_装了1个G的CAD字体后,我的CAD崩了怎么办?
- matlab 系数矩阵存储,用Matlab对矩阵进行LU分解法 值得收藏
- 2019小程序没必要做了_2019,小程序会更好吗?
- SageX3和车辆排队系统、地磅系统集成方案
- 常见的web攻击手段
- pfx证书导入方式,步骤流程
- Nginx入门基础篇
- Training Generative Adversarial Networks with Limited Data
- 工商管理专业知识与实务(初级)【9】
- MQ135传感器浓度转换公式
- java jtextfield 居中_如何使JTextField中输入的文字居中显示
热门文章
- html frameset
- linux终端历史记录文件夹,如何通过命令行查看`.bash_history`文件?
- mysql 主从 MySQLroute_mysql主从复制
- html如何给文字添加阴影效果,css中怎么给字体添加阴影效果
- python怎么做彩票概率_用Python一次性把论文作图与数据处理全部搞定!
- oracle 10.2.0.4 rac emca,ORACLE 10G RAC升级10.2.0.4报错
- python检索字符串_python查找字符串所有子串
- 共阳极数码管动态扫描c语言,《C语言编程实训》实训指导书三
- bash 运行程序 下一步_怎样用 Bash 编程:语法和工具
- c++成员函数的重载、覆盖、隐藏区别