zoukankan      html  css  js  c++  java
  • csharp: using OleDb Getting the identity of the most recently added record

    /// <summary>
            /// 执行SQL语句,返回影响的记录数
            /// </summary>
            /// <param name="SQLString">SQL语句</param>
            /// <returns>影响的记录数</returns>
            public static int ExecuteSql(string SQLString, params OleDbParameter[] cmdParms)
            {
                using (OleDbConnection connection = new OleDbConnection(connectionString))
                {
                    using (OleDbCommand cmd = new OleDbCommand())
                    {
                        try
                        {
                            PrepareCommand(cmd, connection, null, SQLString, cmdParms);
                            int rows = cmd.ExecuteNonQuery();
                            cmd.Parameters.Clear();
                            return rows;
                        }
                        catch (System.Data.OleDb.OleDbException E)
                        {
                            throw new Exception(E.Message);
                        }
                    }
                }
            }
            /// <summary>
            ///  添加返迴ID值
            ///  涂聚文 2014-12-29
            ///  Geovin Du
            /// 參考:  http://www.mikesdotnetting.com/article/54/getting-the-identity-of-the-most-recently-added-record
            /// http://stackoverflow.com/questions/186544/identity-after-insert-statement-always-returns-0
            /// </summary>
            /// <param name="SQLString"></param>
            /// <param name="identity"></param>
            /// <param name="cmdParms"></param>
            /// <returns></returns>
            public static int ExecuteSql(string SQLString, out int identity, params OleDbParameter[] cmdParms)
            {
               
                using (OleDbConnection connection = new OleDbConnection(connectionString))
                {
                    using (OleDbCommand cmd = new OleDbCommand())
                    {
                        try
                        {
                            PrepareCommand(cmd, connection, null, SQLString, cmdParms);
                            int rows = cmd.ExecuteNonQuery();
                            cmd.CommandText = "Select @@Identity";
                            identity = (int)cmd.ExecuteScalar();
                            cmd.Parameters.Clear();
                            return rows;
                        }
                        catch (System.Data.OleDb.OleDbException E)
                        {
                            throw new Exception(E.Message);
                        }
                    }
                }
            }
    

      

  • 相关阅读:
    Java线程池
    Servlet实现网页十天免登陆功能
    代码实现QQ消息轰炸
    数组模拟栈数据结构
    约瑟夫问题以及环形链表的解决方案
    ServletConfig中的方法
    Servlet的生命周期
    数组模拟环形队列
    数组模拟队列
    多线程实现奇偶数的依次输出
  • 原文地址:https://www.cnblogs.com/geovindu/p/4192607.html
Copyright © 2011-2022 走看看