zoukankan      html  css  js  c++  java
  • 在创建带输出参数和返回值的存储过程时---犯下的一个低级错误

    异常处理汇总-数据库系列  http://www.cnblogs.com/dunitian/p/4522990.html

    后期会在博客首发更新:http://dnt.dkill.net/Article/Detail/313

    错误如图,怎么执行都没有自己想要的效果(return掉了,还有个啥???!!!)

    处理后:

    if exists(select * from sysobjects where name='usp_AllPmsTest')
    	drop proc usp_AllPmsTest
    go
    create proc usp_AllPmsTest
    @cityName nvarchar(30),
    @id int output
    as
    begin
    	insert into ShopModelBak values(@cityName,1,1)
    	set @id=@@identity
    
    	select CPName,CName,SName,MType,MName,Mprice from ShopMenu 
    	inner join ShopModel on ShopMenu.MShopId=ShopModel.SId
    	inner join View_CityData on ShopMenu.MCityId=CId
    	where CName=@cityName
    
    	return (select count(1) from ShopMenu)
    end
    go
    declare @total int,@id int
    exec @total=usp_AllPmsTest '滨湖区',@id output
    select @id Id,@total total
    

    ADO.Net

    var pms = new SqlParameter[]
                              {
                              new SqlParameter("@cityName", "滨湖区"),
                              new SqlParameter("@id", SqlDbType.Int),
                              new SqlParameter("@total", SqlDbType.Int)
                              };
                pms[1].Direction = ParameterDirection.Output;
                pms[2].Direction = ParameterDirection.ReturnValue;
                var list = SQLHelper.ExecuteReader<ShopMenu>("usp_AllPmsTest", CommandType.StoredProcedure, pms);
                foreach (var item in list)
                {
                    Console.WriteLine(item.MName + " " + item.MPrice);
                }
                Console.WriteLine("刚才插入的ID是:{0},总共{1}条数据", pms[1].Value, pms[2].Value);

    相关文章:http://www.cnblogs.com/dunitian/p/5362528.html

  • 相关阅读:
    4、自定义菜单
    3、关注、取消关注 与 关键字回复
    2、自动回复消息
    1、接入公众平台
    java学习备忘录
    vue组件最佳实践
    js拉起或下载app
    angular1.5 Components
    Charlse 使用小记
    2016年终总结
  • 原文地址:https://www.cnblogs.com/dunitian/p/5363895.html
Copyright © 2011-2022 走看看