当前位置: 首页 > 图文教程 > 数据库 > MSSQL > SQL server 2000存储过程

MSSQL
SQL Server 2000企业版安装教程
存储过程入门与提高
SQL Server 2000安装和基本框架
关于SQL Server的若干注意事项
数据库菜鸟不可不看 简单SQL语句小结
浅谈数据库设计技巧(上)
浅谈数据库设计技巧(下)
Oracle PL/SQL入门之案例实践
新手入门 Windows下Oracle安装图解
oracle架构的基础知识(入门级)
数据库正规化和设计技巧(2)
数据库正规化和设计技巧(3)
使用MS SQL7的LINKED SERVER第一篇
使用MS SQL7的LINKED SERVER第二篇
使用MS SQL7的LINKED SERVER第三篇
使用MS SQL7的LINKED SERVER第四篇
数据仓库的概念
Oracle 8 的函数介绍
从一个MysqL的例子来学习查询语句
SQL中DATALENGTH 用法

MSSQL 中的 SQL server 2000存储过程


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-30   浏览: 116 ::
收藏到网摘: n/a

if exists(select name from sysobjects where name='GetRecord' and type = 'p')
   drop procedure GetRecord
GO

create procedure GetRecord
@id int output,              --输出p_id和p_path
@path nvarchar(255) output
as

select top 1 @id = p_id, @path = p_path from n_project where p_flag = '0';
if(@id > 0)  
   Update n_project set p_flag = '1' where p_id = @id
else
  begin
    set @id = 0;      --若没有结果则给个默认值,否则直接返回NULL会使程序错误
    set @path = ' ';  --若p_path为NULL,则它也会返回NULL,从而造成程序错误
  end
if(@path is NULL)
begin
   set @path = ' ';
end

if @@error=0
print 'Good'
else
print 'Fail'
go

--测试程序
declare @idd int
declare @ppath nvarchar(255)
EXEC dbo.GetRecord @idd output,@ppath output
select '1'=@idd, '2'=@ppath
go

SQL SERVER中,按CTR+0,即可输入空值NULL


http://blog.csdn.net/gzq400/archive/2007/02/02/1501235.aspx