小编Dom*_*aut的帖子

光标内的SQL更新速度慢

我在packageNo表格中添加了一个新列:

 create table Packages(
  id varchar(20) primary key,  -- ok, I know :)
  orderNo uniqueIdentifier not null,
  orderlineNo int not null, 
  packageNo int not null default(0)
)
Run Code Online (Sandbox Code Playgroud)

现在我想packageNo用以下规则生成:

    为每个订单重置它
    上升为订单,订单

我的问题是我写的脚本在我的testServer上使用了15分钟的26500行.这里是:

set NoCount ON
declare @Counter int
declare @handledCounter int
declare @currentorder uniqueIdentifier
declare @fetchedOrder uniqueIdentifier
declare @fetchedId varchar(20) -- will using PK speed up things?

declare PackageNo_Cursor cursor  for 
  select orderNo, id from packages order by orderNo, orderlineNo for update of packageNo

open PackageNo_Cursor
fetch …
Run Code Online (Sandbox Code Playgroud)

sql t-sql sql-server performance

3
推荐指数
1
解决办法
1526
查看次数

标签 统计

performance ×1

sql ×1

sql-server ×1

t-sql ×1