• SQL存储过程


    什么是存储过程

    为以后使用而保存的一条或多条SQL语句。可视为批文件。

    为什么使用存储过程

     1.把处理封装到一个单元中,简化复杂操作。

     2.所以开发人员和应用程序可以使用同一存储过程,所使用的代码是相同的,因此保证了数据的一致性。

    3.如果表名、列名或业务逻辑有变化,那么只需要更改存储过程的E代码。

     执行存储过程

    EXECUTE AddNewProduct('JTS01','Stuffed Eiffel Tower',6.49,'Plush Stuffed')

    这里执行了一个名为AddNewProduct的存储过程,将一个新产品添加到Products表中。

    AddNewProduct有4个参数,这4个参数匹配存储过程中的4个预期变量。

    此存储过程将新行添加到Products表。并将传入的值赋给相应的列。

    Products表还有prod_id这个列,这个列是这个表的主键,存储过程会自动生成ID

    创建存储过程:

    统计Customers表中,email不为NULL的用户。

    CREATE PROCEDURE MailingListCount
    AS
    DECLARE @cnt INTERGER
    SELECT @cnt=COUNT(*)
    FROM Customers
    WHERE NOT cust_email IS NULL;
    RETURN @cnt;

      执行存储过程:

    DECLARE @ReturnValue INT
    EXECUTE @ReturnValue=MailingListCount;
    SELECT  @ReturnValue

    在Orders表中,创建一个新订单。

    CREATE PROCEDURE NewOrder @cust_id CHAR()
    AS
    DECLARE @order_num INTERGER
    SELECT @order_num=MAX(order_num)
    FROM ORDER
    
    SELECT @order_num= @order_num+1
    
    INSERT INTO Orders(order_num,order_date,cust_id)
    VALUES(@order_num,GETDATE(),@cust_id)
    
    RETURN @order_num;
  • 相关阅读:
    C# 日期格式化
    MVVM框架下,WPF实现Datagrid里的全选和选择
    【转】WPF 给DataGridTextColumn统一加上ToolTip
    C# 获取当前月第一天和最后一天 计算两个日期差多少天
    WPF 弹出UserControl
    斐讯Fir302b救砖教程
    mvc 传递匿名对象
    Java HttpGet
    Java xml object 互转
    HttpClientHandler
  • 原文地址:https://www.cnblogs.com/liuguangshou123/p/13852001.html
Copyright © 2020-2023  润新知