Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/flash/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server 从tablename中删除需要异常长的时间_Sql Server - Fatal编程技术网

Sql server 从tablename中删除需要异常长的时间

Sql server 从tablename中删除需要异常长的时间,sql-server,Sql Server,我在SQLServer2005中有一个表,其中有一个chaild表,其中有数百万条记录。无论何时,即使使用where子句发出delete命令,执行该命令也会花费异常长的时间。是否是因为子表的大小导致了此延迟?有哪些方法可以加快删除查询的速度 谢谢, sweta.通常的嫌疑犯: 触发 WHERE子句中列的索引? 子表FK列中FL列的索引? 级联删除等:参见索引点 此外: 日志文件增长? ... 注释后编辑:您需要索引…听起来它可能正在对子表进行表扫描。确保联接列在子表上有一个索引。触发WHERE子

我在SQLServer2005中有一个表,其中有一个chaild表,其中有数百万条记录。无论何时,即使使用where子句发出delete命令,执行该命令也会花费异常长的时间。是否是因为子表的大小导致了此延迟?有哪些方法可以加快删除查询的速度

谢谢, sweta.

通常的嫌疑犯:

触发 WHERE子句中列的索引? 子表FK列中FL列的索引? 级联删除等:参见索引点 此外:

日志文件增长? ...
注释后编辑:您需要索引…

听起来它可能正在对子表进行表扫描。确保联接列在子表上有一个索引。

触发WHERE子句中列的-none索引-none Cascade delete-none这是delete命令。。从sal_process_details中删除sal_process_master_id在sal_process_master中选择sal_process_master_id从sal_process_master中选择sal_process_id,其中process_month和process_year=@year和employee_id在sal_process_temp中选择employee_id是否有一种方法可以临时挂起两个表之间的外键约束并启用删除后的约束已完成。请让我知道是否有其他解决此问题的方法。@sweta Jha,想象一下你必须从电话簿中删除一个姓名,但它没有索引。所有姓名都是随机排列的。你需要多长时间才能找到要删除的姓名?如果有一个索引,那么删除一个名称不是更快吗?它们都是按顺序排序的。当某个数据库运行缓慢时,首先要检查的是。。。。你猜对了。。。是否正在使用索引?如果您需要索引方面的帮助,请询问更多问题。。。