zoukankan      html  css  js  c++  java
  • 数据库学习记录

    1.数据库中的exec命令,可以用来执行存储过程,可以把存储过程理解为定义在sql server数据库中的函数,而exec就是去执行该定义的函数,既然是函数,那么定义时就有一下几种类型

        1)无参数无返回值的

        2)有参数无返回值的

        3)无参数有返回值的

        3)有参数有返回值的

    下面举几个简单的例子,供简单理解

    (1  无参数

      create procedure sp_latvia_sys_role    --创建一个存储过程,其中sp_latvia_sys_role是创建的存储过程名称

      as                  --作为(存储过程执行 本质上就是去执行一条定义好的语句)

      begin

      select * from sys_role

      end

    2.带输入参数

    create procedure procedure_proc_GetoffinfoById --(存储过程名)
    @Id int--(参数名 参数类型)
    as select Name from dbo.Office_Info where Id=@Id--(sql语句)
    
    exec procedure_proc_GetoffinfoById 2--(存储过程名称之后,空格加上参数,多个参数中间以逗号分隔)

    注:参数赋值是,第一个参数可以不写参数名称,后面传入参数,需要明确传入的是哪个参数名称

    3.带输入输出参数

    复制代码

    create procedure proc_office_info--(存储过程名)
    @Id int,@Name varchar(20) output--(参数名 参数类型)传出参数要加上output
    as 
    begin
    select @Name=Name from dbo.Office_Info where Id=@Id --(sql语句)
    end

    declare @houseName varchar(20) --声明一个变量,获取存储过程传出来的值
    exec proc_office_info--(存储过程名)
    4,@houseName output--(传说参数要加output 这边如果用@变量 = OUTPUT会报错,所以换一种写法)

    select @houseName--(显示值)

    复制代码

    4.带返回值的

    复制代码
    create procedure proc_office_info--(存储过程名)
    @Id int--(参数名 参数类型)
    as 
    begin
    if(select Name from dbo.Office_Info where Id=@Id)=null --(sql语句)
    begin
    return -1
    end
    else
    begin
    return 1
    end
    end
    
    declare @house varchar(20) --声明一个变量,获取存储过程传出来的值
    exec @house=proc_office_info 2 --(调用存储过程,用变量接收返回值)
    --注:带返回值的存储过程只能为int类型的返回值
    print @house
    复制代码
     
     
     
    数据库各种文件解释:.sql文件:数据库脚本,可以在数据库中直接运行,脚本中都是数据库执行语句。 .mdf:数据库分离后文件格式,将一个数据库从服务器分离,会使源服务器上不存在该数据库  .bak:数据库备份文件,与分离的区别是备份后数据库在源服务器上仍旧存在
    bcp命令,支持数据导入导出
    定义变量:declare @Id int;
    赋值:set @Id = 3;
    输出:print(@Id)
     
  • 相关阅读:
    Dynamics CRM修改密码界面
    Dynamics CRM新加了组织后提示数据加密错误的解决方法
    ADFS修改默认访问端口
    Dynamics CRM与ADFS安装到同一台服务器后ADFS服务与Dynamics CRM沙盒服务冲突提示808端口占用问题
    Dynamics CRM各个版本的元数据浏览解决方案
    Dynamics CRM9.0安装CRM的时候提示Microsoft.Crm.Setup.Server.RegisterSandboxServiceAction操作失败
    IIS误删了默认网站,恢复方法
    grafana配置邮件告警
    Git连接Gitlab并提交内容
    docker自定义bridge
  • 原文地址:https://www.cnblogs.com/zst-blogs/p/10072024.html
Copyright © 2011-2022 走看看