sql server 存储过程传参,返回值基本教程

本机的navcat第一次链接远程sqlserver,需安装sqlncli_x64.msi软件网上有的是之后就可以打开链接了

sql server 存储过程传参,返回值基本教程_第1张图片点击函数新建

sql server 存储过程传参,返回值基本教程_第2张图片不用写名字 选中过程点击完成

sql server 存储过程传参,返回值基本教程_第3张图片这个地方改成自己的名字(用这种方式取名是为了方便理解,避免自动生成)

 

AS 上面定义参数 举例@plateNo varchar(10),  类型自己定

AS 下面写自己的逻辑

逻辑快中放BEGIN END代码块 注:每个逻辑快都要放BEGIN END代码块

如图显示举例参数的使用和业务sql语句的签入

sql server 存储过程传参,返回值基本教程_第4张图片

下面讲解怎么加上返回值

直接看图

sql server 存储过程传参,返回值基本教程_第5张图片

代码:

CREATE PROCEDURE Demo
    @plateNo varchar(10),
    @diNo varchar(11),
    @dateTime datetime,
    @tgLong decimal(18,6),
    @tgLat decimal(18,6),
    @returnCode int output,
    @returnMsg varchar(50) output
AS

    if (select count(*) from t_vehicle_info where f_vi_plate_no = @plateNo and f_di_no = @diNo) > 0
        begin
            update t_vehicle_info SET f_vi_long = @tgLong,f_vi_lat = @tgLat,f_vi_update_time = @dateTime where f_vi_plate_no = @plateNo and f_di_no = @diNo;  --写自己的逻辑
            INSERT INTO t_trackup_gis (pkid,f_vi_plate_no,f_di_no,f_tg_time,f_tg_long,f_tg_lat) VALUES (newId(),@plateNo,@diNo,@dateTime,@tgLong,@tgLat);  --写自己的逻辑
            set @returnMsg = '成功';
            set @returnCode = 1;
        end
    else
    begin

        --写自己的逻辑
        set @returnMsg = '失败';
        set @returnCode = 0;
    end

到这里传参是完事了,返回值还需要一步操作(调用方法)

declare @returnStr varchar(50); --定义返回变量
declare @returnInt INT; --定义返回变量
--执行存储过程
EXEC Demo @plateNo='A00001',@diNo='A0000000001', @dateTime='2021-03-06 08:53:22',@tgLong=11.1111,@tgLat=11.11111, @returnMsg=@returnStr OUTPUT ,@returnCode = @returnInt OUTPUT;
SELECT  @returnStr; --查看返回变量
SELECT  @returnInt;  --定义返回变量

到这里就入门实战案例就完事了以后会跟进。

 

 

 

你可能感兴趣的:(sqlserver)