sql存储过程的创建
一:没有参数的存储过程
CREATE PROCEDURE select_all
AS
BEGIN
SELECT * from T_login1
END
GO
二:带参数的存储过程
CREATE PROCEDURE select_name
@id uniqueidentifier
AS
BEGIN
SELECT * from T_login1 where PSN0001A=@id
END
GO
三:带通配符参数存储过程
alter proc proc_findStudentByName
@name nvarchar()='F%'
as
select * from T_login1 where PSN0001A like @name
go exec proc_findStudentByName 'F%'
四:带默认值的参数的存储过程
create proc sele_name
@name nvarchar()='hong3'
as
select * from T_login1 where PSN0002A=@name exec sele_name 'lk'
exec sele_name
五:带输出参数的存储过程
create proc [dbo].[p_selectName] @name nvarchar(),
@num int output
as
select @num=COUNT(PSN0001A) from T_login1 where PSN0002A=@name declare @num int
exec p_selectName 'lk',@num output
print @num declare @num1 int
exec p_selectName @name='lk',@num=@num1 output
print @num1
六:临时存储过程
create proc #p_selectName2
as
select COUNT(PSN0001A) from T_login1 where PSN0002A='lk' exec #p_selectName2
七:存储过程的嵌套
alter proc #p_selectName2
as
select COUNT(PSN0001A) from T_login1 where PSN0002A='lk'
exec sele_name exec #p_selectName2
八:不缓存的存储过程
if (object_id('proc_temp', 'P') is not null)
drop proc proc_temp1--如果存在不为空,释放掉
go
create proc proc_temp1
with recompile
as
select * from T_login1
go
exec proc_temp1;
九:加密存储过程(无法查看存储过程的代码)
if (object_id('proc_temp_encryption', 'P') is not
null)
drop proc proc_temp_encryption
go
create proc proc_temp_encryption
with encryption
as
select * from T_login1;
go
exec proc_temp_encryption;
exec sp_helptext 'proc_temp1';
exec sp_helptext 'proc_temp_encryption';
十:存储过程中使用if......else
CREATE PROCEDURE pro_numToName
@num int ,
@str nvarchar() output
AS
if @num=
begin
set @str='wang'
end
else
begin
set @str='qita'
end
sql存储过程的创建的更多相关文章
- PL SQL 存储过程 SQL SERVER创建存储过程及调用,Oracle创建存储过程及调用
Oracle使用存储过程实例: 例1: //查出表字段赋值给存储过程变量 create proc proc_stu @sname varchar(20), //默认是输入参数(input),另外还有两 ...
- PL/SQL存储过程编程
PL/SQL存储过程编程 /**author huangchaobiao *Email:huangchaobiao111@163.com */ PL/SQL存储过程编程(上) 1. Oracle应用编 ...
- SQL存储过程基础(从基础开始学,加油!)
Transact-SQL中的存储过程,非常类似于Java语言中的方法,它可以重复调用.当存储过程执行一次后,可以将语句缓存中,这样下次执行的时候直接使用缓存中的语句.这样就可以提高存储过程的性能. Ø ...
- MYSQL中存储过程的创建,调用及语法
MySQL 存储过程是从 MySQL 5.0 开始增加的新功能.存储过程的优点有一箩筐.不过最主要的还是执行效率和SQL 代码封装.特别是 SQL 代码封装功能,如果没有存储过程,在外部程序访问数据库 ...
- 转载 sql 存储过程与函数区别
SQL Server用户自定义函数和存储过程有类似的功能,都可以创建捆绑SQL语句,存储在server中供以后使用.这样能够极大地提高工作效率,通过以下的各种做法可以减少编程所需的时间: 重复使用编程 ...
- SQL 存储过程入门(事务)(四)
SQL 存储过程入门(事务)(四) 本篇我们来讲一下事务处理技术. 为什么要使用事务呢,事务有什么用呢,举个例子. 假设我们现在有个业务,当做成功某件事情的时候要向2张表中插入数据,A表,B表,我 ...
- SQL存储过程概念剖析
一.SQL存储过程的概念,优点及语法 定义:将常用的或很复杂的工作,预先用SQL语句写好并用一个指定的名称存储起来, 那么以后要叫数据库提供与已定义好的存储过程的功能相同的服务时,只需调用execut ...
- javax.transaction.xa.XAException: java.sql.SQLException: 无法创建 XA 控制连接。(SQL 2000,SQL2005,SQL2008)
javax.transaction.xa.XAException: java.sql.SQLException:无法创建 XA 控制连接.错误: 未能找到存储过程'master..xp_sqljdbc ...
- SQL 存储过程(学生,课程表,选修表)
SQL 存储过程(学生,课程表,选修表) 一.存储过程的分类 在SQL Server中存储过程分过两类: 1)系统存储过程("sp_"作为前缀) 2)用户自定义存储过程 二.创建和 ...
随机推荐
- intent和intentfilter
intent 和intent Filters startActivity()的机制 用到了IBinder ipc 用到了进程间通讯机制 activity有四种LaunchMode 当startActi ...
- Linux: FTP服务原理及vsfptd的安装、配置
1.FTP 服务的安装# yum install -y vsftpd [root@rusky pub]# ls -l /etc/vsftpd/ total 20 -rw-------. 1 root ...
- QT pro文件解析
在QT中使用qmake自动生成pro文件,如果要自己定制工程选项,则需要自行修改pro文件. pro文件有以下关键字:TEMPLATE.TARGET.DESTDIR.DEPENDPATH.INCLUD ...
- 使用MiniProfiler调试Asp.net Mvc性能
使用nuget添加MiniProfiler.EF组件 在Global文件中配置MiniProfiler protected void Application_Start() { AreaRegistr ...
- .NET aspx页面中的按钮无法响应事件
原因只有一个,页面中存在多个form标签.按Ctrl+F,找到多余的删掉即可
- Phonegap 极光推送api 服务器端推送代码
.net 版本 极光推送 后台接口 HttpWebResponseUtility类 using System; using System.Collections.Generic; using Syst ...
- 更新Xcode7 后 .dylib变成了.tbd的问题解决
拿添加libsqlite3.dylib为例 1.打开你添加的libsqlite3.tbd 文本文件,然后有一行 install-name: /usr/lib/libsqlite3.dylib ...
- Java基础--多线程的方方面面
1,什么是线程?线程和进程的区别是什么? 2,什么是多线程?为什么设计多线程? 3,Java种多线程的实现方式是什么?有什么区别? 4,线程的状态控制有哪些方法? 5,线程安全.死锁和生产者--消费者 ...
- 模仿qq音乐播放字母效果
html <div class="cont"> <ul class="cont_ul" id="cont_ul"> ...
- android布局2
Android功能强大,界面华丽,但是众多的布局属性就害苦了开发者,下面这篇文章结合了网上不少资料. 第一类:属性值为true或false android:layout_centerHrizontal ...