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

MSSQL
ACCESS改为SQL需要注意哪几个地方
把sql数据和access数据整合成一个数据集
SQL中Print语句的烦恼
关于SQL server中字段值为null的查询
得出SQL语句的执行时间的方法
如何在SqlServer与oracel中进行分页的讨论!
分页SQLServer存储过程
怎么清除sql server日志
Sql数据库MDF数据文件数据库恢复
SQL Server存储图像数据的策略与方法
sql server关于函数中如何使用Getdate()
将使用Access的论坛迁移到SqLServer中
ACCESS:跨数据库查询的SQL语句
SQLSERVER扩展存储过程XP_CMDSHELL的简单应用
在SQL Server中快速删除重复记录
调整SQLServer2000运行中数据库结构
SQL Server中查询时显示行号的方法
从数据库中随机抽N条记录
确保所有的非空(Non-NULL)值都是唯一的
使用视图控制用户对数据访问

MSSQL 中的 SQL server 2000存储过程


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-30   浏览: 68 ::
收藏到网摘: 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