zoukankan      html  css  js  c++  java
  • sql: MySQL and Microsoft SQL Server Stored Procedures IN, OUT using csharp code

    MySQL存储过程:

    #插入一条返回值涂聚文注
    DELIMITER $$ DROP PROCEDURE IF EXISTS `geovindu`.`proc_Insert_BookKindOut` $$ CREATE PROCEDURE `geovindu`.`proc_Insert_BookKindOut` (IN param1Name NVarChar(1000),IN param1Parent Int,OUT ID INT) BEGIN IF NOT EXISTS (SELECT * FROM BookKindList WHERE BookKindName=param1Name) then #如果存在相同的记录,不添加 INSERT INTO BookKindList (BookKindName,BookKindParent)VALUES(param1Name ,param1Parent); #set ID=Last_insert_id() SELECT LAST_INSERT_ID() into ID; end if; END $$ DELIMITER ;

    Microsoft SQL Server存储过程

    --插入一条返回值涂聚文注
    IF EXISTS (SELECT * FROM sysobjects WHERE [name] = 'proc_Insert_BookKindOut') DROP PROCEDURE proc_Insert_BookKindOut GO CREATE PROCEDURE proc_Insert_BookKindOut ( --@BookKindID Int, @BookKindName NVarChar(1000), @BookKindCode varchar(100), @BookKindParent Int, @BookKindID int output ) AS IF NOT EXISTS (SELECT * FROM BookKindList WHERE [BookKindName]=@BookKindName) BEGIN INSERT INTO BookKindList ( [BookKindName] , [BookKindCode], [BookKindParent] ) VALUES ( @BookKindName , @BookKindCode, @BookKindParent ) select @BookKindID=@@IDENTITY END GO

      csharp 读取MySQL存储过程:

     /// <summary>
            /// 追回返回值涂聚文注
            /// </summary>
            /// <param name="bookKindList"></param>
            /// <param name="id"></param>
            /// <returns></returns>
            public int InsertBookKindOut(BookKindListInfo bookKindList,out int id)
            {
                int ret = 0;
                int tid = 0;
                try
                {
                    MySqlParameter[] par = new MySqlParameter[]{
    				new MySqlParameter("?param1Name",MySqlDbType.VarChar,1000),
    				new MySqlParameter("?param1Parent",MySqlDbType.Int32,4),
                    new MySqlParameter("?ID",MySqlDbType.Int32,4),
    				};
                    par[0].Value = bookKindList.BookKindName;
                    par[1].Value = bookKindList.BookKindParent;
                    par[2].Direction = ParameterDirection.Output;
                    ret = MySqlHelpDu.ExecuteSql("proc_Insert_BookKindOut", CommandType.StoredProcedure, par);
                    if (ret > 0)
                    {
                        tid = (int)par[2].Value;
                    }
                }
                catch (MySqlException ex)
                {
                    throw ex;
                }
                id = tid;
    
                return ret;
            }
    

      

    csharp 读取Microsoft SQL Server存储过程

            /// <summary>
            /// 追加记录返回值
            /// </summary>
            /// <param name="bookKindList"></param>
            /// <param name="iout"></param>
            /// <returns></returns>
            public int InsertBookKindOut(BookKindListInfo bookKindList,out int iout)
            {
                int ret = 0;
                int tou = 0;
                try
                {
                    SqlParameter[] par = new SqlParameter[]{
    				new SqlParameter("@BookKindName",SqlDbType.NVarChar,1000),
    				new SqlParameter("@BookKindParent",SqlDbType.Int,4),
                    new SqlParameter("@BookKindID",SqlDbType.Int,4),
    				};
                    par[0].Value = bookKindList.BookKindName;
                    par[1].Value = bookKindList.BookKindParent;
                    par[2].Direction = ParameterDirection.Output;
                    ret = DBHelper.ExecuteSql("proc_Insert_BookKindOut", CommandType.StoredProcedure, par);
                    if (ret > 0)
                    {
                        tou =(int)par[2].Value;
                    }
                }
                catch (SqlException ex)
                {
                    throw ex;
                }
                iout = tou;
                return ret;
            }
    

      

  • 相关阅读:
    七周七语言——Prolog(二)
    centos中使用python遇到的几个问题
    use SWF / Flash in cocos2d-x; cocos2d(cocos2d-x) 直接播放flash / SWF文件
    【C++自我精讲】基础系列二 const
    Find发帖水王哥
    JAVA从零单排之前因
    CSharp
    python实战--Http代理服务器
    有道单词-批量导入[只有单词]
    编译原理(一道小证明题)
  • 原文地址:https://www.cnblogs.com/geovindu/p/4283408.html
Copyright © 2011-2022 走看看