首页 / 数据库 / SQLServer / 浅谈SQL Server数据库并发测试方法
浅谈SQL Server数据库并发测试方法2011-09-181. 利用测试工具模拟多个最终用户进行并发测试;这种测试方法的缺点:最终用户往往并不是直接连接到数据库上,而是要经过一个和多个中间服务程序,所以并不能保证访问数据库时还是并发。其次,这种测试方法需要等到客户端程序、服务端程序全部完成才能进行;2. 利用测试工具编写脚本,直接连接数据库进行并发测试;这种方法可以有效的保证并发操作,而且在数据库访问程序完成即可测试,可以大大缩短测试时间,而且测试效果更好。下面通过一个演示程序,演示使用Robot使用第二种测试方法进行数据库的并发测试。第一步:创建演示程序打开SQL SERVER查询分析器,在SQL SERVER测试数据库中执行下列脚本(脚本执行操作:创建表testtable,并插入一条记录;创建存储过程test): if exists (select * from dbo.sysobjects where id = object_id(N"[dbo].[Test]") and OBJECTPROPERTY(id, N"IsProcedure") = 1)
drop procedure [dbo].[Test]
GO
if exists (select * from dbo.sysobjects where id = object_id(N"[dbo].[testtable]") and OBJECTPROPERTY(id, N"IsUserTable") = 1)
drop table [dbo].[testtable]
GO
CREATE TABLE [dbo].[testtable] (
[testid] [int] NULL ,
[counts] [int] NULL
) ON [PRIMARY]
GO
insert into testtable (testid,counts) values (1,0)
GO
SET QUOTED_IDENTIFIER ON
GO
SET ANSI_NULLS ON
GO
CREATE Procedure dbo.Test
as
declare @count int
begin tran TEST
select @count=countsfrom testtable where testid=1
update testtable setcounts=@count+1
if (@@error >0) begin
rollback tran TEST
end else begin
commit tran TEST
end
GO
SET QUOTED_IDENTIFIER OFF
GO
SET ANSI_NULLS ON
GO