有没有办法保证从链接表派生的表中的行顺序?当我从“链接的工作表”中进行选择时,有时会丢失行顺序(不幸的是,它具有含义),同时循环许多工作表和WB。
DoCmd.TransferSpreadsheet acLink, , "linked_sheet ", sfile, False, "some_sheet!A1:U100"
CurrentDb().Execute "select '" & identifier & "' as id1, " & identifier2 & " as id2, i.* into temp_table from linked_sheet i"
CurrentDb().Execute "alter temp_table add column ky counter primary key"
键是正确的序号,但行与原始电子表格不同。
该问题是间歇性的,并非每次都在同一张纸/ WB上发生。
如果我发现了错误,请返回并重新运行相同的代码,它将返回正确的原始行顺序,如表中所示。
这些行没有丢失,它们被移到temp_table中的其他位置。查询链接表时我将WB保留在内存中,这可能会导致问题吗?
从哲学上讲,您不必关心插入到目标表中的行的顺序。这是由数据库引擎决定的。从临时表中选择时,您唯一需要关注的就是演示。这是此语法不支持“ order by”的最可能原因。
请问为什么这是一个问题?
其他数据库使用语法“从x插入x(从y的z中选择*)”,其中“ order by”控制将行呈现给insert语句的顺序。但是仍然存在着数据库中数据的顺序不相关的问题。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句