首页 > 学习园地 > 英语学习

sql存储过程语法,sql的存储过程怎么写

雕龙文库

【简介】感谢网友“雕龙文库”参与投稿,这里小编给大家分享一些[db:SEO标题],方便大家学习。

sql存储过程语法?1)过程名存储过程的名称,默认在当前数据库中创建。若需要在特定数据库中创建存储过程,则要在名称前面加上数据库的名称,即db_name.sp_name。需要注意的是,名称应当尽量避免选取与MySQL内置函数相同的名称,否则会发生错误。那么,sql存储过程语法?一起来了解一下吧。

sql server存储过程教程

要到达你的要求,在存储过程中必须使用动态SQL语句。

一个简化的例子:

createprocedureMyDynamicSQL

@tblwherenvarchar(200)扮备--a==aora==xxx

as

begin

慧蔽declare@sqlnvarchar(max)

--动态拼接sql语句

set@sql=N'select*from[表一]where'+@tblwhere

--执行

executesp_executesql@sql

前缺州end

sql存储过程例子

一般分为十种情况,每种语法各不相同:

1、 创建语法

create proc | procedure pro_name [{@参数数据类型} [=默认值] [output],{@参数数据类腔渣腊型} [=默认值] [output],.... ]as SQL_statements2、 创建不带参数存储过程

--创建存储过程if (exists (select * from sys.objects where name = 'proc_get_student'))drop proc proc_get_studentgocreate proc proc_get_studentasselect * from student;--调用、执行存储过程exec proc_get_student;3、 修改存储伍滑过程

--修改存储过程alter proc proc_get_studentasselect * from student;4、 带参存储过程

--带参存储过程if (object_id('proc_find_stu', 'P') is not null)drop proc proc_find_stugocreate proc proc_find_stu(@startId int, @endId int)asselect * from student where id between @startId and @endIdgoexec proc_find_stu 2, 4;5、 带通配符参数存储过程

--带通配符参数存储过程if (object_id('proc_findStudentByName', 'P') is not null)drop proc proc_findStudentByNamegocreate proc proc_findStudentByName(@name varchar(20) = '%j%', @nextName varchar(20) = '%')asselect * from student where name like @name and name like @nextName;goexec proc_findStudentByName;exec proc_findStudentByName '%o%', 't%';6、 带输出参数存储过程

if (object_id('proc_getStudentRecord', 'P') is not null)drop proc proc_getStudentRecordgocreate proc proc_getStudentRecord(@id int, --默认输入参数@name varchar(20) out, --输出参数@age varchar(20) output--输入输出参数)asselect @name = name, @age = agefrom student where id = @id and sex = @age;go-- declare @id int,@name varchar(20),@temp varchar(20);set @id = 7; set @temp = 1;exec proc_getStudentRecord @id, @name out, @temp output;select @name, @temp;print @name + '梁斗#' + @temp;7、 不缓存存储过程

--WITH RECOMPILE 不缓存if (object_id('proc_temp', 'P') is not null)drop proc proc_tempgocreate proc proc_tempwith recompileasselect * from student;goexec proc_temp;8、 加密存储过程

--加密WITH ENCRYPTION if (object_id('proc_temp_encryption', 'P') is not null)drop proc proc_temp_encryptiongocreate proc proc_temp_encryptionwith encryptionasselect * from student;goexec proc_temp_encryption;exec sp_helptext 'proc_temp';exec sp_helptext 'proc_temp_encryption';9、 带游标参数存储过程

if (object_id('proc_cursor', 'P') is not null)drop proc proc_cursorgocreate proc proc_cursor@cur cursor varying outputasset @cur = cursor forward_only static forselect id, name, age from student;open @cur;go--调用declare @exec_cur cursor;declare @id int,@name varchar(20),@age int;exec proc_cursor @cur = @exec_cur output;--调用存储过程fetch next from @exec_cur into @id, @name, @age;while (@@fetch_status = 0)beginfetch next from @exec_cur into @id, @name, @age;print 'id: ' + convert(varchar, @id) + ', name: ' + @name + ', age: ' + convert(char, @age);endclose @exec_cur;deallocate @exec_cur;--删除游标10、 分页存储过程

---存储过程、row_number完成分页if (object_id('pro_page', 'P') is not null)drop proc proc_cursorgocreate proc pro_page@startIndex int,@endIndex intasselect count(*) from product;select * from (select row_number() over(order by pid) as rowId, * from product ) tempwhere temp.rowId between @startInd

创建存储过程sql语法

MySQL教程4 MySQL8运算符、函数、存储过雹睁程及新增数据类型源配岁 17.之卖塌创建带有IN和OUT参数的存储过程 学习猿地

sql的存储过程怎么写

MySQL教程4 MySQL8运算符、函数、存储过雹睁程及新增数据类型源配岁 17.之卖塌创建带有IN和OUT参数的存储过程 学习猿地

sql存储过程的使用及语法

CREATE PROCEDURE [dbo].[sp_test]

@id INT

AS

BEGIN

SET NOCOUNT ON;

SELECT @id+10

END

CREATE TABLE #tab

(

ID int

)

INSERT INTO #tab

EXEC sp_test 10

SELECT * FROM #tab

DROP TABLE #tab

以上就是sql存储过程语法的全部内容,语法分析:OR REPLACE是一个可选的关键字,建议用户使用此关键字。如果过程已经存在,该关键字将重新创建过程,这样就不必删除和重新创建过程。关键字IS和AS均可,它们本身没有区别。IS后面是一个完整的PL/SQL块,内容来源于互联网,信息真伪需自行辨别。如有侵权请联系删除。

相关图文

推荐文章

网站地图:栏目 TAGS 范文 作文 文案 学科 百科

雕塑 信息流广告 竞价托管 招生通 周易 易经 代理招生 二手车 剧本网 网络推广 自学教程 招生代理 旅游攻略 非物质文化遗产 河北信息网 石家庄人才网 买车咨询 河北人才网 招生考试 精雕图 戏曲下载 河北生活网 好书推荐 工作计划 游戏攻略 心理测试 石家庄网络推广 石家庄招聘 石家庄网络营销 培训网 好做题 游戏攻略 考研真题 代理招生 心理咨询 游戏攻略 兴趣爱好 网络知识 品牌营销 商标交易 游戏攻略 短视频代运营 张家口人才网 秦皇岛人才网 PS修图 宝宝起名 零基础学习电脑 电商设计 职业培训 免费发布信息 服装服饰 律师咨询 搜救犬 Chat GPT中文版 语料库 范文网 工作总结 二手车估价 短视频剪辑 情侣网名 爱采购代运营 保定招聘 餐饮品牌 黄金回收价格 情感文案 吊车 古诗词 邯郸人才网 铁皮房 衡水人才网 石家庄点痣 微信运营 养花 名酒回收 石家庄代理记账 女士发型 搜搜作文 石家庄人才网 铜雕 关键词优化 围棋 chatGPT 读后感 玄机派 企业服务 法律咨询 chatGPT国内版 chatGPT官网 励志名言 儿童文学 河北代理记账公司 风水运势 狗狗百科 教育培训 游戏推荐 抖音代运营 朋友圈文案 男士发型 培训招生 文玩 大可如意 保定人才网 沧州人才网 黄金回收 承德人才网 石家庄人才网 模型机 高度酒 沐盛有礼 公司注册 十亩地 造纸术 唐山人才网 沐盛传媒 铜雕厂家