zoukankan      html  css  js  c++  java
  • SqlServer知识点

    在公司天天写Sql写,存储过程,但是公司工具模板把创建的语句都写好了,只负责写里面的逻辑,久而久之,创建语句都不会写了。还有一些知识点都很模糊,平常使用的时候都不清楚,稀里糊涂的就在用。在这里整理一下。巩固复习。

    一.存储过程。

    1.存储过程类似编程语言的里面的函数,方法。将Sql语句封装在里面,方便调用。

    2.首先看下创建无参数存储过程语法。

    CREATE PROCEDURE MyProTest
    AS
        SELECT * FROM dbo.saUser
    GO

    创建有参数的存储过程

    CREATE PROCEDURE MyProTest
    (
        @ID INT=0
    )
    WITH ENCRYPTION /* { RECOMPILE | ENCRYPTION | RECOMPILE , ENCRYPTION } ]*/
    AS
        SELECT * FROM dbo.saUser
    GO

     这个地方后面WITH后面跟的值要说明下

    a.RECOMPILE  表明 SQL Server 不会缓存该过程的计划,该过程将在运行时重新编译。在使用非典型值或临时值而不希望覆盖缓存在内存中的执行计划时,请使用 RECOMPILE 选项。

    b.ENCRYPTION 表示 SQL Server 加密 syscomments 表中包含 CREATE PROCEDURE 语句文本的条目。使用 ENCRYPTION 可防止将过程作为 SQL Server 复制的一部分发布。 说明 在升级过程中,SQL Server 利用存储在 syscomments 中的加密注释来重新创建加密过程。 说白了就是就是对存储过程进行加密。这个我经常用,上面以恶就不经常用了,在这里了解一下。

    3.执行存储过程

    EXEC dbo.MyProTest @ID=1

    4.删除存储过程

    DROP PROC dbo.MyProtest

    删除语法简单说一下。不管删除表,还是存储过程,还是视图,还是函数。删除语法都是 Drop 关键字 +类型+名称。

    二.函数 

    1.创建语法

     a.返回Nvarchar类型参数

    CREATE FUNCTION Test    ---创建语法 Create关键字 +类型 +名称
    (
        @iIden INT          ---参数
    )
    RETURNS NVARCHAR(50)    --定义返回类型
    WITH ENCRYPTION
    AS
    BEGIN
        DECLARE @sUserName NVARCHAR(50)   
        SELECT @sUserName=A.sUserName
        FROM dbo.saUser A(NOLOCK)
        WHERE A.iIden=@iIden
    
        RETURN @sUserName
    END

    b.返回表变量的函数

    CREATE FUNCTION Test    ---创建语法 Create关键字 +类型 +名称
    (
        @iIden INT          ---参数
    )
    RETURNS @Table TABLE(
       iiden INT,
       sName NVARCHAR(50)
    )
    WITH ENCRYPTION
    AS
    BEGIN
        DECLARE @sUserName NVARCHAR(50)
        INSERT INTO @Table
        SELECT A.iIden,A.sUserName
        FROM dbo.saUser A(NOLOCK)
        WHERE A.iIden=@iIden
    
        RETURN
    END
  • 相关阅读:
    day06
    样式表
    框架&样式表
    表单
    用表格制作百度首页
    汉企教育实训第第二天
    汉企教育实训第一天感想
    BootStrap前端框架
    MySQL存储过程、存储函数介绍
    日常记录
  • 原文地址:https://www.cnblogs.com/DingKing/p/8267109.html
Copyright © 2011-2022 走看看