在一张相当小的桌子上创建一个索引(大约700行,10列)我开始得到
System.Data.SqlClient.SqlException:超时已过期
索引已在主键上进行了群集。 没有触发器。
通过存储过程进行更新时发生了所有这些错误。 删除索引后,我没有更多的超时问题。
设置CommandTimeout没有帮助。 有没有人知道为什么会这样?
存储过程(这里没什么特别的)
Update objects set date_last_datacollect=@date_last_datacollect,
date_last_error='',message_last_error='' where objectid = @objectid
表格结构
CREATE TABLE [dbo].[objects](
[id] [int] IDENTITY(1,1) NOT NULL,
[objectid] [nvarchar](50) NULL,
[name] [nvarchar](max) NULL,
[adminid] [nvarchar](50) NULL,
[token] [nvarchar](max) NULL,
[type] [nvarchar](max) NULL,
[date_added] [date] NULL,
[date_last_update] [datetime] NULL,
[date_last_datacollect] [datetime] NULL,
[date_last_error] [datetime] NULL,
[message_last_error] [nvarchar](max) NULL,
[active] [bit] NULL,
[logourl] [nchar](255) NULL
) ON [PRIMARY]
编辑: 查看我的表结构后,我意识到可能是由于缺少主键?
答案 0 :(得分:0)
您是否尝试更新桌面上的统计信息?