一、插入数据
1、插入数据返回当前主键ID
当我们插入一条数据的时候,很多时候都想立刻获取当前插入的主键值返回以做它用。我们通常的做法有如下几种:
1. 先 select max(id) +1 ,然后将+1后的值作为主键插入数据库;
2. 使用特定数据库的 auto_increment 特性,在插入数据完成后,使用 select max(id) 获取主键值;
但要获取此ID,最简单的方法就是在查询之后select @@identity。
sql代码:
INSERT INTO table_name (.....) VALUES(......) SELECT @@IDENTITY AS ID; Eg: (long=int64) long result=0; object obj = DbHelperSQL.GetSingle(strSql.ToString(), parameters); if (obj == null) { Result= 0; } else { Result= Convert.ToInt64(obj); }
2、批量插入数据
--循环插入大量数据
首先创建一个数据表
SET STATISTICS TIME ON --查看服务器资源使用情况。打开CUP统计报表 DECLARE @Index INT = 1 --声明变量 DECLARE @Timer DATETIME = GETDATE() WHILE @Index <= 100000 BEGIN INSERT [Test](Name, CreateTime, Remark) VALUES('hy_' + CAST(@Index AS CHAR(6)),DATEADD (SS,-@Index,GETDATE()), 'system'); SET @Index = @Index + 1; END --SELECT DATEDIFF(MS, @Timer, GETDATE()) AS [执行时间(毫秒)] SET STATISTICS TIME OFF;