问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

何为存储过程,举例说明

发布网友 发布时间:2022-04-22 08:04

我来回答

3个回答

热心网友 时间:2022-04-11 18:17

存储过程,实际就是一段写在数据库中的代码。。

由于此段数据库操作代码由服务器完成,而客户端只是进行简单的参数提交,所以,可以有效的利用服务器的强劲而减小对客户机的负合。

如:你想插入一条数据到数据库。

虽然你的要求是,先检查表里面是否己存在该项。

如果不存在就Insert,如果存在就UPDATE。

这个时候,你就可以把这个判断用存储过程来写。

你的程序只要提示你想要保存到数据库里面的东西即可。

下面就是一个简单的存储过程。

CREATE PROCEDURE [insert_A_Employees]
(@fWorkNo [int],
@fWorkName [char](10),
@fDeptName [varchar](20),
@fGroupName [varchar](20),
@fRecordDate [datetime])

AS

declare @iCount int

select @iCount = count(*) from A_EMPLOYEES where @fWorkNo = fWORKNO --统计该工号在数据库的数量赋值给 @iCount

if @iCount = 0 --如果数据库中不存在该工号
begin

INSERT INTO [CLKQ].[dbo].[A_Employees] --则插入数据
( [fWorkNo],
[fWorkName],
[fDeptName],
[fGroupName],
[fRecordDate])

VALUES
( @fWorkNo,
@fWorkName,
@fDeptName,
@fGroupName,
@fRecordDate)

return 1 --返回一个标识

end else begin --否则则更新数据

update [CLKQ].[dbo].[A_Employees]

set [fWorkName]=@fWorkName,
[fDeptName]=@fDeptName,
[fGroupName]=@fGroupName,
[fRecordDate]=@fRecordDate

where [fWorkNo]=@fWorkNo

return 0 --返回一个标识

end
GO

此时你只要在客户端程序提供:

@fWorkNo ,
@fWorkName ,
@fDeptName ,
@fGroupName ,
@fRecordDate

这几个值就行了。。

其它处理过程就由服务器方处理了。

以上是以 SQL 数据库为例。。。

ACCESS 等数据库没有此功能。

参考资料:我忘了在哪找的

热心网友 时间:2022-04-11 19:35

简单的说,存储过程相当于我们平常的函数,只不过是SQL语言来实现
以下为一个简单例子
--创建存储过程(这里只简单示例,当然这里可以写很复杂的逻辑)
create proc proc_student as
select * from student
select * from student where sex='man'
select * from student where sex='woman'
go

--调用存储过程
exec proc_student

热心网友 时间:2022-04-11 21:09

比如你要根据用户的ID.去查看该用户当前是什么级别.然后按不同的级

别.给该用户不同的奖励.

如果不用存储过程.你是不是得先执行一个select语句.然后再根据返回

值执行一个update语句?

好.现在用存储过程.把上述的过程封装起来.你在程序里只需要调用这个

存储过程.只需要把用户ID传参数进去.其它的操作都在数据库端进行了.

不用你的程序再去判断了.
何为存储过程,举例说明

存储过程,实际就是一段写在数据库中的代码。。由于此段数据库操作代码由服务器完成,而客户端只是进行简单的参数提交,所以,可以有效的利用服务器的强劲而减小对客户机的负合。如:你想插入一条数据到数据库。虽然你的要求是,先检查表里面是否己存在该项。如果不存在就Insert,如果存在就UPDATE。这个...

什么是存储过程

二 ORACLE 的存储过程 ORACLE 创建存储过程的语法为: create [or replace] procedure 过程名 参数1 [in|out|in out] 数据类型 [,参数2 [in|out|in out] 数据类型]... pl/sql 语句 下面举例说明ORACLE数据库存储过程的写法和用法。 可以建立一个存储过程,每当用户修改数据库的重要数据时,即把...

举例说明存储过程的定义与调用(数据库习题) 基于SQL server

举例:创建一存储过程,getDetailByName,参数学生姓名,筛选学生基本信息,不存在的话做检测。打印不存在此学生 create procedure getDetailByName studentname char(10)as if exists(select * from student where sname=@studentname)select * from student else print '此学生不存在'go exec getDetailByName...

请举例说明存储过程和函数的共同点和区别。

1、函数可以用在sql查询里面而过程不行,因为函数有返回值,过程只能通过出参。2、在调用时函数必须要有一个变量来接收返回值而过程不需要。可能最大的区别在于以上两点。3、声明的关键字也是不一样的。

数据库课程学习的主要内容?举例说明

1、数据库课程学习的主要内容有:介绍关系型数据库。建库建表和删表。索引和约束主外键。然后开始学 sql 简单查询。接下来就是高级查询和高级应用,游标以及存储过程。2、例如:关系型数据库,是指采用了关系模型来组织数据的数据库,其以行和列的形式存储数据,以便于用户理解,关系型数据库这一系列的...

oracle中如何执行已经写好的存储过程,就exec 一下?好像不行哦,请举例...

这个得看你在哪里执行了,如果是命令窗口用 exec 存储过程名 就可以。如果是pl/sql窗口就得用 beging 过程名 end; 包含起来作为匿名块来执行。

如何将C#控件中选择的年月日参数传入存储 过程中!求大侠举例说明小弟比 ...

存储过程,跟数据库语句在编程环境里因该没有本质区别,都是给一段文本。所以我觉得你的问题是语句有问题。对了,存储过程得提前写在数据库里的。你真的写了吗?可以试试插入语句,看看普通的数据库插入语句是否在你写的C#里起作用了。这个事情需要翻看 数据库SQL2000的书。虽然那书并没有把存储过程...

我要写个oracle的存储过程,这个存储过程查询视图,然后把查询到的内容...

很简单,代码如下 create or replace procedure test is begin --两个表字段一样 insert into 表名1 select * from 表名2;--字段不一样 insert into 表名1(字段1,字段2,字段3) select 字段1,字段2,字段3 from 表名2;COMMIT;end

...PL/sql 如果一张表的每行数据是另一个表的列名 怎么用存储过程...

举例说明 表A:prjCode prjName p1 项目1 p2 项目2 另外有一存储过程 getPrjTask,参数为prjCode; 获取表的所有prjCode,每个prjCode作为参数传入存储过程(这里传参数可以使用游标循环传参), 循环调用存储过程。循环调用的语句如下 declare @prjCode Nvarchar(50)DECLARE cursor1 CURSOR FOR ...

...Server 2008中,数据库中的数据完整性怎样得到保证,请举例说明...

1、数据完整性就是通过各种约束+触发器保证 2、存储过程是对一系列完成特定任务的语句的封装,支持传参和返回,相比批处理的优点是执行计划重用,不用每次都分析再生成计划,当然如果存储过程内部是执行动态语句,那就没区别了;触发器可以算作是加了触发机关的存储过程。触发器大功能上分为DDL和DML两块...

作为人何为正确的举例说明 请举例说明何为以人为本 举例说明何为双名法 举例说明何为矛盾 举例说明何为融资 如何创建存储过程 如何创建一个存储过程 以人为本举例说明 举例说明的举是什么意思
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
我要买车,本人男,30出头,预购三厢车,价格11-14之间,高人推荐一下? 瘦肚子瘦最快方法 怎么瘦肚子 新手买车咨询,男生,身高185cm,10万元的预算,包括各种税险等,想购置三厢... 对方把朋友圈设置了部分人可见,但我见不到,是不是不把我当成好朋友了... 想买车了,10万左右的三厢手动挡,POLO劲取.奔腾B50.新宝来.哪个好呢... 2024年阴历8月哪天适合提车 外甥结婚第一年还给压岁钱,第二年不给了好吗 压岁钱可以第二年比前一年发的少吗?比如第一年给三千,后来给一千或者五 ... 2023年农历正月属羊人最吉利的提车日子本月哪天宜买车上牌? 结婚黄道吉日2023年8月适合属羊人办喜事的日子查询? 存储过程到底是什么! 存储过程的定义? 存储过程是什么?谁能给我详细解答? 存储过程和函数的区别 什么显示控制面板无法改变显示设置? 什么是存储过程?用什么来调用? 数据库中的存储过程是什么 黄码上有关联手机号 什么是存储过程存储过程有什么特点 我手机关联别人的手机号,那我信息是不是他手机也... 关联手机号有什么作用 存储过程的定义 中国移动什么是关联手机号? 什么是存储过程? 百度账号关联手机号有什么用,怎么取消 什么是存储过程?有什么优点? 怎么去除杯子上的茶渍 光遇官服的账号中心里的关联手机号有什么用?之前... 家庭号是要有多个手机号码然后去关联在一起吗? 洗衣店能清洗T恤上的啤酒渍或茶渍吗? 存储过程在数据库中的作用是什么 显示控制面板无法更改显示设置。图形驱动程序返回一个未知的错误。 汽车导航微信公众号都有哪些 在导航时来微信了,导航可以显示在屏幕上方,怎么样... 车载导航怎么下载微信 手机导航时来微信如何看到 netflix必须付费吗? netflix 如何注册 netflix怎么注册 Netflix是不是付费包月后,马上就可以点击开始看了... ps4 pro上的netflix怎么注册啊看不懂英文 netflix新手注册遇到扣费问题 奈飞会员日期是按天算 XBOX金会员Netflix 西瓜汁怎么清洗干净? 苹果怎么下载netflix 如何用PayPal在Netflix上购买会员 衣服上的西瓜汁用什么方法能洗掉 衣服粘了西瓜汁可以洗掉吗? 为什么西瓜汁溅到身上洗不掉了?