关闭

【数据库SQL】SQL存储过程使用案例

144人阅读 评论(0) 收藏 举报
分类:
/**触发器调用存储过程,直接写:Exce 存储过程名就好了
create trigger trname on tb
for update
as
begin
    exec sp_test '','',''...
end
go
存储过程不能调用触发器,因为触发器要根据指定条件触发
**/
--存储过程一般是以SP开头的
use hbposev9
go
if (exists (select * from sys.objects where name = 'sp_test'))
    drop proc sp_test
go
--创建存储过程
create procedure sp_test(@item_no varchar(20), @item_subno varchar(20))
as 
begin 
--当参数传递下来时,可以直接执行如下操作
    --update t_bd_item_info set item_name='test' where item_no=@item_no
select * from t_bd_item_info where item_no=@item_no and item_subno=@item_subno 
end
go


--调用存储过程
exec sp_test '01010006','11053001'


 
/**如下也是案例 
create   procedure sp_test( @sheet_id varchar(10) ,@branch_no varchar(4) ,@v_no varchar(14) output)
as 
begin
declare @sheet_no int,@s_date varchar(8),@d_date datetime
select @branch_no=left(@branch_no+'00',2)
select @sheet_no=(isnull(sheet_value,0) + 1)
    from t_sys_sheet_no where Lower(sheet_id) = Lower(@sheet_id)
if @sheet_no>9999  
   set   @sheet_no =0  


update t_sys_sheet_no set sheet_value= @sheet_no where
 Lower(sheet_id) = Lower(@sheet_id)
select @v_no = '0000'+convert(char,@sheet_no)
select @v_no = right(rtrim(@v_no),4)
--@sheet_no = upper(@sheet_id)+string(today(),'yyyymmdd')+v_no


select @s_date=convert(char(8),getdate(),112)
select @v_no = upper(@sheet_id) + @branch_no + right(@s_date,6) + @v_no
end 
**/





0
0
查看评论

sql存储过程几个简单例子(一)

导读:sql存储是数据库操作过程中比较重要的一个环节,对于一些初学者来说也是比较抽象难理解的,本文我将通过几个实例来解析数据库中的sql存储过程,这样就将抽象的事物形象化,比较容易理解。 例1: create proc proc_stu @sname varchar(20), @pwd ...
  • imxiangzi
  • imxiangzi
  • 2015-01-18 09:44
  • 2100

通过一个实际的例子学习SQLServer存储过程

下面通过一个实际的例子学习SQLServer存储过程。所谓应用而学。 --定义存储过程    CREATE PROCEDURE  xxxxxxxx_p     (    ...
  • beiguofengguang
  • beiguofengguang
  • 2007-11-04 10:51
  • 13313

SQL存储过程实例详解

本文用3个题目,从建立数据库到创建存储过程,详细讲解数据库的功能。
  • u012025054
  • u012025054
  • 2014-09-01 23:29
  • 23504

图解SQL Server 存储过程教程一

以下给出存储过程代码和鄙人运行成功的截图。把以下存储过程代码中的tablename替换为自己的表名。 一 不带参数存储过程 if (exists (select * from sys.objects where name = 'proc_get_tablename')) ...
  • bcbobo21cn
  • bcbobo21cn
  • 2015-03-26 20:13
  • 1047

数据库单元测试工具-SQLUnit

一位使用 SQLUnit 的亲身经历,也希望有人能重新启动 SQLUnit 的项目
  • lvye1221
  • lvye1221
  • 2014-03-25 15:07
  • 1213

其实很容易的SQL SERVER存储过程和触发器(10分钟入门教程)

(我说是是10分钟入门,事实上对我来说,真的就是老师讲的那十分钟,并没有过分夸张,然后我就知道了存储过程和触发器应该怎么写了,当然只是入门而已,但我恬恬缺这十分钟,如果没有人讲,只是自己看书的话,至少要好几天的时间了....) 一直以来,对SQL SERVER的存储过程和触发器都基本没有用...
  • lanman
  • lanman
  • 2008-12-13 21:14
  • 12396

sql 存储过程 入门级 练习

sql 存储过程 入门级
  • samuel_zhang_
  • samuel_zhang_
  • 2015-08-20 10:16
  • 2271

sql存储过程完全教程

1.sql存储过程概述2.SQL存储过程创建3.sql存储过程及应用4.各种存储过程使用指南5.ASP中存储过程调用的两种方式及比较6.SQL存储过程在.NET数据库中的应用 7.使用SQL存储过程要特别注意的问题 1.sql存储过程概述 ...
  • guxianga
  • guxianga
  • 2007-09-22 10:11
  • 6115

sql server 脚本创建备份数据库的存储过程及利用前述存储过程自动备份数据库的作业

一、创建备份数据库的存储过程 /****** Object: Procedure [dbo].[SP_BackUp_DataBase_Log] Script Date: 3/10/2017 2:17:36 PM ******/ USE [master]; GO SET ANSI_NULLS O...
  • hejisan
  • hejisan
  • 2017-03-10 15:09
  • 546

SQL基本编程,分支语句,循环语句,存储过程,触发器

基本编程: 定义变量 declare @变量名 数据类型   赋值 set @变量名 = 值 select @变量名 = 值     取值打印 select @变量名 print @变量名 映射到结果集   打印到消息框    ...
  • fanfzj
  • fanfzj
  • 2017-03-19 15:09
  • 594
    个人资料
    • 访问:40660次
    • 积分:1352
    • 等级:
    • 排名:千里之外
    • 原创:99篇
    • 转载:1篇
    • 译文:0篇
    • 评论:2条
    最新评论