如果使用管理员访问权限运行,为什么SQLite会返回不同的值?
当我运行作者网站提供的官方SQLite二进制文件时,查询:如果使用管理员访问权限运行,为什么SQLite会返回不同的值?,sqlite,Sqlite,当我运行作者网站提供的官方SQLite二进制文件时,查询:从foo f中选择DISTINCT f.id,其中f.id=b.id和b.type='baz'它返回不同的结果,无论SQLite是以管理员身份运行还是以普通身份运行。如何/为什么会发生这种情况 我不知道如何在不提供实际数据库本身的情况下复制此行为以向您展示(我无法做到)。因此,任何帮助我解决这个问题的想法都将不胜感激 编辑:查询从sqlite\u master中选择名称、根页面也返回不同的结果:缺少行,页面索引也不同。(从注释移动) 这是
从foo f中选择DISTINCT f.id,其中f.id=b.id和b.type='baz'
它返回不同的结果,无论SQLite是以管理员身份运行还是以普通身份运行。如何/为什么会发生这种情况
我不知道如何在不提供实际数据库本身的情况下复制此行为以向您展示(我无法做到)。因此,任何帮助我解决这个问题的想法都将不胜感激
编辑:查询从sqlite\u master中选择名称、根页面代码>也返回不同的结果:缺少行,页面索引也不同。(从注释移动)
这是由于自动文件夹重定向。如果不支持Vista的程序试图使用非特权帐户写入程序文件,Windows会自动将新文件重定向到用户特定的文件夹中,以强制执行安全设置,而不会中断旧的应用程序。通常,应用程序不应写入程序文件
有关详细信息,请参阅。您是否正在尝试访问Windows Vista或更高版本的程序文件中的数据库?@MatteoItalia是的,您知道问题所在吗?这是由于自动文件夹重定向造成的。如果不支持Vista的程序试图使用非特权帐户写入程序文件,Windows会自动将新文件重定向到用户特定的文件夹中,以强制执行安全设置,而不会中断旧的应用程序。一般来说,你的应用程序不应该写在程序文件中。阅读@MatteoItalia请回答这个问题。