存储过程问题,先查询后更新
CREATE PROCEDURE dbo.batch_courier
	/*
	(
	@parameter1 int = 5,
	@parameter2 datatype OUTPUT
	)
	*/
AS
	/* SET NOCOUNT ON */
declare @r nvarchar(500)
SELECT @r=courier FROM stock_A WHERE (doc_no = 'S1644') and stock_no=N'O1887' and courier is null
if @r
begin
UPDATE stock_A SET TRACKING_date = GETDATE(),tracking=N'dds' where (doc_no = 'S1644') and stock_no=N'O1887'
else
UPDATE stock_A SET TRACKING_date = GETDATE(),tracking=tracking+N'ddswwww' where (doc_no = 'S1644') and stock_no=N'O1887'
end
	RETURN
C#如果先查询数据库有没有这个字段,然后再更新,会打开关闭数据库二次,现在想在存储中中解决这个问题,哪位高人指点一下。谢谢
------解决方案--------------------
你可以把一个connection赋给两个不同的Command,或者把一个Command.Text两次赋值后执行两次,不一定要用存储过程,