我最近安装并一直使用Microsoft SQL Server Management Studio Express 9.00.4035.00来管理主机的SQL Server 2005上的远程数据库。
到目前为止,我一直在使用EMS SQL Manager 2011 Lite,而且工作正常。
今天早上插入我的一张桌子的2个新行;一个是客户注册服务而另一个是我的测试注册。
当我运行典型的选择查询时:
[Select top 20 * From tblNotary Order By ID Desc]
我没有看到最近的2行。但是当我从EMS SQL Manager Lite运行相同的查询时,我看到了记录。
我还验证了使用MS Access 2010进行连接时,我看到了表中的2个新行。我检查并仔细检查了连接设置,它们与EMS匹配。
是否有一个设置或明显的东西我不见了?为什么我看不到最近的记录插入?我在Windows 7桌面计算机上。
答案 0 :(得分:1)
最可能的原因是您连接的数据库与预期不同。您可以select @@servername
验证两个查询是否针对同一服务器运行。
如果记录是作为打开事务的一部分插入并且尚未提交的记录,则称为“幻像”行。如果您的查询在transaction isolation level read committed
或更高版本运行,则不会看到虚拟行。可能是EMS SQL Manager Lite在read uncommitted
运行,在这种情况下,它将在查询中包含幻像行。
答案 1 :(得分:0)
有时连接字符串是一件棘手的事情。运行此命令以进行双重检查:
select @@servername servername, name, crdate
from sys.sysdatabases
where name = db_name()
如果您遇到问题,请执行更简单的版本:
select @@servername, db_name(), @@version
答案 2 :(得分:0)
Select top 20 * From tblNotary Order By ID Desc