5

我们有一个 SQL 服务器数据库。要以非编程方式操作数据,我可以通过右键单击表并选择“打开表”来使用 SQL Server Management Studio。然而,这对于非常大的表来说很慢,并且排序和过滤很麻烦。

通常,到目前为止,我们所做的是创建一个 Access 数据库,其中包含指向 SQL Server 表和视图的链接表。通过这种方式打开大表要快得多,而且 Access 具有易于使用的右键过滤和排序功能。

但是,自 Access 2007 以来,在处理大型表时,排序尤其慢。Access 数据库还可能无意中锁定数据库表,从而阻塞可能需要访问数据的其他进程。首先创建 Access 数据库,然后在将新表添加到 SQL Server 时对其进行更新,也很乏味。

有没有更好的方法来处理提供 Access 可用性而没有缺点的数据?

4

6 回答 6

2

Joel Coehoorn 的回答当然是正确的,如果数据很关键或者有天真的用户在使用数据,那么应该开发一个应用程序前端。话虽这么说,但在某些情况下,明智的用户(好吧,我)用户需要进入那里并四处逛逛。

不要直接查看表,而是使用 MS Access,但使用查询来缩小您正在查看的列和行的范围。这将提高速度。然后编辑查询属性并确保查询为无锁。这应该消除任何阻塞行为。您可能希望限制返回的行数,这将再次提高速度。您仍然可以在查看查询时编辑查询中的数据。

根据您所查看的内容,在 SQL Server 中设置数据库视图以在服务器而不是客户端上完成一些繁重的工作也可能很有用。

于 2008-09-06T09:54:23.157 回答
1

我不知道它对非常大的表的效果如何,但是对于基本的表操作,Visual Studio 比 SQL Management Studio 快得多。在服务器资源管理器中打开数据库,右键单击表,然后选择“打开”以仅显示数据或选择“新查询”进行过滤、排序等。

于 2008-09-02T19:22:46.820 回答
1

我使用 Visual Studio 做了很多事情,只是为了方便,而不是必须登录到服务器并直接在数据库管理器上工作。

但是,您是否尝试过 Toad for MS SQL(来自 Quest Software)?我一直在为 Oracle 使用它,并且取得了很好的效果(通常比 Oracle 的工具更好)。

于 2008-09-03T21:28:44.870 回答
0

编辑原始数据是一个危险的禁忌。更好地识别您发现自己这样做的情况,并将应用程序接口放在一起作为中介,可以防止您做一些愚蠢的事情,例如破坏外键。

于 2008-09-02T19:26:09.713 回答
0

我不知道大型数据集的性能如何,但 open office 有一个数据库程序 (Base),它是一个 Access 克隆,可能正是您正在寻找的。

于 2008-09-02T19:29:25.337 回答
0

您可能想阅读 Tony Toews 的 Access Performance FAQ,其中提供了许多关于如何提高 Access 应用程序性能的提示。也许其中一个技巧可以解决您的 A2K7 应用程序中的问题。

于 2008-09-15T21:12:36.087 回答