• sqlserver 简单的存储过程学习记录


            在这个项目中 ,之前都是用强哥已经写好的存储过程 ,但是自己没怎么写过 ,刚好最近在需要都是自己一条龙服务的过程中 ,需要写到存储过程 ,刚开始学 ,对于一个做了开发两年的程序员来说 ,实在不应该不会 ,所以为了让自己记住 ,写下随笔 。

           这条的作用就是先检查是否存在永远的数据 ,如果存在 ,则不执行insert操作,否则执行insert操作 。

           

    USE [MicroBlog]
    GO
    /****** Object:  StoredProcedure [dbo].[Proc_InsertGuest]    Script Date: 09/28/2012 10:40:13 ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    ALTER proc [dbo].[Proc_InsertGuest]
    (
    	@VID INT,
    @Gest varchar(20) ,
    @rc AS BIT OUTPUT
    )
    AS 
    BEGIN
    IF NOT EXISTS (SELECT * FROM VGuest v WHERE v.VID=@VID AND v.Gest=@Gest)
    BEGIN
    	INSERT INTO VGuest
    	(
    		VID,Gest		
    	)
    	VALUES
    	(
    		@vid,@Gest
    	)
    	  SET @rc = 0
    END
    
       ELSE
            BEGIN
             SET @rc = 1
            END
    END
    

      代码很简单 ,@vid,@Gest是作为传入的参数 ,@rc则是output的参数 ,在程序中只需要接收这个值就可以直接使用。

     /// <summary>
            /// 添加嘉宾
            /// </summary>
            /// <param name="Vid"></param>
            /// <param name="guestID"></param>
            /// <returns></returns>
            public int addGuset(int Vid, string Gest)
            {
                try
                {
                    String Query = "Proc_InsertGuest";
                    SqlParameter[] Parms = {
                                              new SqlParameter("@VID",Vid),
                                             new  SqlParameter("@Gest",Gest),
                                             new SqlParameter( "@rc","")
                                           };
                    Parms[2].Direction = ParameterDirection.Output;
                    db.AddParameter(Parms);
                    db.ExecuteScalar(Query, CommandType.StoredProcedure, connState);
                    return Convert.ToInt32(Parms[2].Value);
                }
                catch (Exception ex)
                {
                    throw new Exception("添加微访谈嘉宾失败!\n" + ex.Message);
                }
            }
    

      

  • 相关阅读:
    谈谈Oracle基本操作(下)
    谈谈Oracle基本操作(上)
    java理论之java多线程与网络编程
    java理论之java--GUI(图形用户管理)与 IO/流
    java理论之java数组和集合
    存图片的
    .html()渲染后的内容还是带标签的字符串的问题
    Vuejs报错error: Unexpected console statement (no-console) at src... 解决办法
    常用正则表达式
    移动WEB---01.关于屏幕像素
  • 原文地址:https://www.cnblogs.com/lelese7en/p/2706830.html
Copyright © 2020-2023  润新知