alter proc SP_TestProgramExpenseTime(@sql nvarchar(200))
as
declare
@begin_dt nvarchar(50),
@end_dt nvarchar(50),
@expense_dt nvarchar(50);
begin
print '--------------------------------';
set @begin_dt = convert(nvarchar(50), getdate(), 21);
print 'start: ' + @begin_dt;
print '--------------------------------';
print '';
print 'begin run program...';
exec (@sql);
print ''
--waitfor delay '00:00:02';
print '--------------------------------';
set @end_dt = convert(nvarchar(50), getdate(), 21);
print 'end: ' + @end_dt;
print '--------------------------------';
set @expense_dt = datediff(ms, cast(@begin_dt as datetime), cast(@end_dt as datetime))/1000;
print 'expense: ' + @expense_dt + 's';
print '--------------------------------';
end;
as
declare
@begin_dt nvarchar(50),
@end_dt nvarchar(50),
@expense_dt nvarchar(50);
begin
print '--------------------------------';
set @begin_dt = convert(nvarchar(50), getdate(), 21);
print 'start: ' + @begin_dt;
print '--------------------------------';
print '';
print 'begin run program...';
exec (@sql);
print ''
--waitfor delay '00:00:02';
print '--------------------------------';
set @end_dt = convert(nvarchar(50), getdate(), 21);
print 'end: ' + @end_dt;
print '--------------------------------';
set @expense_dt = datediff(ms, cast(@begin_dt as datetime), cast(@end_dt as datetime))/1000;
print 'expense: ' + @expense_dt + 's';
print '--------------------------------';
end;
本文介绍了一个用于测试SQL指令执行时间的过程。通过记录开始和结束时间,并计算两者之间的差值来评估SQL指令的运行效率。
439

被折叠的 条评论
为什么被折叠?



