小编And*_*rew的帖子

在 javascript 中拖放文件时,文件添加到 DataTransfer FileList 的顺序是什么?

我正在构建一个网络应用程序,用户可以将图像拖到浏览器中并放置以上传它们。问题是,我希望文件按照与从中拖出文件的文件夹相同的顺序上传。看起来 ondrop 事件的 DragEvent.DataTransfer.FileList 中的文件是随机排序的。这个顺序是如何确定的呢?我是否可以确定用户从中拖出文件的文件夹中文件的原始顺序?

html javascript drag-and-drop fileapi

2
推荐指数
1
解决办法
974
查看次数

如何在 SSMS 中显示批量中单个查询的实际查询计划?

我有一个正在尝试优化的存储过程,它接受表变量作为参数。表变量具有单个列,用于传入主键列表。测试时,我创建一个虚拟表变量,运行一堆 INSERT 语句向其中添加虚拟值,然后将其传递到存储过程中。这工作正常,但是当我想查看实际的查询执行计划时,SSMS 会为所有 INSERT 语句和存储过程编译查询计划。因此,如果我有 1000 个虚拟 INSERT 语句,SSMS 将崩溃。不幸的是,表变量必须与存储过程在同一批中执行,因此我无法批量启用/禁用查询计划。

有没有办法只编译存储过程的实际查询计划,忽略批处理中的所有 INSERT 语句?

它看起来是这样的:

DECLARE @dummyIds AS PrimaryKeyTable
INSERT INTO @dummyIds VALUES(1)
INSERT INTO @dummyIds  VALUES(2)
...
INSERT INTO @dummyIds VALUES(1000)

EXEC MyStoredProc @dummyIds
Run Code Online (Sandbox Code Playgroud)

如果我执行包含实际查询计划的批处理,它将生成 1001 个查询计划,而我实际上只想要 1 个。

SQL Server 实例正在运行 SQL SERVER 2014。

sql database sql-server ssms sql-optimization

2
推荐指数
1
解决办法
1023
查看次数