博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
获取mssqlserver与access数据库插入的当前行的id
阅读量:6081 次
发布时间:2019-06-20

本文共 2306 字,大约阅读时间需要 7 分钟。

//mssqlserver public static int GetInsertId(string sql)    {        try        {            SqlCommand cmd = new SqlCommand();            using (SqlConnection conn = new SqlConnection(connectionString))            {                PrepareCommand(cmd, conn, sql, null);                cmd.ExecuteNonQuery();                PrepareCommand(cmd, conn, "Select @@Identity", null);                int val = Convert.ToInt32(cmd.ExecuteScalar());                return val;            }        }        catch (Exception err)        {            throw err;        }    }private static void PrepareCommand(SqlCommand cmd, SqlConnection conn, string CmdText, SqlTransaction trans)    {        try        {            if (conn.State != ConnectionState.Open)            {                conn.Open();            }            cmd.Connection = conn;            cmd.CommandText = CmdText;            if (trans != null)            {                cmd.Transaction = trans;            }            cmd.CommandType = CommandType.Text;        }        catch (Exception err)        {            throw err;        }    }//accesspublic static int GetInsertId(string sql)    {        try        {            OleDbCommand cmd = new OleDbCommand();            using (OleDbConnection conn = new OleDbConnection(ConnectionString))            {                PrepareCommand(cmd, conn, sql, null);                cmd.ExecuteNonQuery();                PrepareCommand(cmd, conn, "Select @@Identity", null);                int val =Convert.ToInt32( cmd.ExecuteScalar());                return val;            }        }        catch (Exception err)        {            throw err;        }        }public static void PrepareCommand(OleDbCommand cmd, OleDbConnection conn, string CmdText, OleDbTransaction trans)    {        try        {            if (conn.State != ConnectionState.Open)            {                conn.Open();            }            cmd.Connection = conn;            cmd.CommandText = CmdText;            if (trans != null)            {                cmd.Transaction = trans;            }            cmd.CommandType = CommandType.Text;        }        catch (Exception err)        {            throw err;        }    }

//还有一种可以用通过插入后查询当前表的最大id的方法获取,但是如果数据并发量大可能回出现问题

转载于:https://www.cnblogs.com/jasonzeng/p/4150382.html

你可能感兴趣的文章
C#数据采集类
查看>>
quicksort
查看>>
【BZOJ2019】nim
查看>>
四部曲
查看>>
LINUX内核调试过程
查看>>
【HDOJ】3553 Just a String
查看>>
Java 集合深入理解(7):ArrayList
查看>>
2019年春季学期第四周作业
查看>>
linux环境配置
查看>>
ASP.NET MVC中从前台页面视图(View)传递数据到后台控制器(Controller)方式
查看>>
一个想法(续二):换个角度思考如何解决IT企业招聘难的问题!
查看>>
tomcat指定配置文件路径方法
查看>>
linux下查看各硬件型号
查看>>
epoll的lt和et模式的实验
查看>>
Flux OOM实例
查看>>
07-k8s-dns
查看>>
Android 中 ListView 分页加载数据
查看>>
oracle启动报错:ORA-00845: MEMORY_TARGET not supported on this system
查看>>
Go方法
查看>>
Dapper丶DapperExtention,以及AbpDapper之间的关系,
查看>>