11-SqlCommand.ExecuteReader相关
1)SqlCommand.ExecuteReader(CommandBehavior.CloseConnection)
command的属性为CommandBehavior.CloseConnection时,在关闭dr时会自动关闭conn;
2)将 CommandText 发送到 Connection 并生成一个 SqlDataReader。
当COMMAND的属性CommandType为CommandType.Text,且command.CommandText="INSERT INTO..."时,SqlCommand.ExecuteReader执行了INSERT语句,并且把数据插入了数据库,但是没有返回SqlDataReader.
获取插入的数据时,可以更改CommandType为CommandType.StoredProcedure,存储过程为:
ALTER PROCEDURE dbo.AddCustomer
(
@ID int,
@Name nvarchar(60),
)
AS
INSERT INTO
Customers (ID, Name)
VALUES
(@ID, @Name)
SLECT *
FROM Users
WHERE
ID = @ID
RETURN
此时,可以返回SqlDataReader.
3)在执行Sql插入后执行SELECT SCOPE_IDENTITY()可以获取最后插入ID
在查询语句后面,增添一 个SELECT SCOPE_IDENTITY()
的查询,这查询将返回当前同一个操作范围内插 入IDENTITY
字段的最后那个identity 值。(详见技术文档中关 于SCOPE_IDENTITY()
的内容以及为什么你应该使用SCOPE_IDENTITY()而不是 @@IDENTITY)。确认在添加SELECT
语句前,你在INSERT
语句后面添一个分号 。
COPYRIGHT©2008,HTTP://ZEROBUG.CNBLOGS.COM .ALL RIGHTS RESERVED.