2010-06-22 61 views
0

我通常不使用Microsoft产品。我在这里有一个MS Access 2007项目,并且我知道带有数据库的MSSQL服务器有一些过程。我如何让它们可见?我可以浏览低谷表和视图...在Access 2007中查看存储过程

感谢和问候, 扬奥利弗

回答

1

当你说访问项目,使用的是你有你的工作在一个项目的期限,或者你做特别表示你正在使用访问数据项目? (ADP)。 ms访问条款ADP具有特定含义,在您的上下文中非常重要。

在ms访问中,很多开发人员只是使用ODBC链接表来将数据放在SQL服务器上。在ms访问中也有一个选项来创建所谓的访问数据项目(ADP)。当您选择创建访问数据项目时,任何视图设计服务(如关系编辑器,表格设计等)看起来像是在访问桌面客户端内部开发的,但事实上幕后访问正在发送DDL(数据定义语言)命令到SQL服务器以在服务器端对象上进行这些修改。所以,你可以修改ms-access中的服务器端对象。创建ADP时不能存在本地表格。

这意味着如果您不使用访问数据项目,则访问和SQL服务器的版本必须更紧密匹配。如果打开访问数据库并查看查询表,则应该看到列表中出现了存储过程。访问应该让你修改它们。

因此,看一下文件扩展名,如果这实际上是一个访问数据项目,那么访问数据库的文件扩展名将是* .adp。

如果文件扩展名是mdb或accDB,那么这不是一个访问数据项目,而是一个传统的访问数据库,其中正在使用到SQL服务器的链接表。这种情况下的非ADP,那么您链接到的视图和表格只会出现在表格中。此外,您所做的任何设计更改都将使用SQL Server管理工具而不是访问客户端完成。因此,当您使用访问数据项目时,不会在访问客户端内部进行对表和视图和过程等的更改,也不能在访问客户端内部进行更改。尽管存在这种限制,但由于SQL Server版本之间的松散关系,大多数开发人员更喜欢使用链接表而不是访问数据项目。事实上,在这些情况下,您甚至可以使用不同的数据库服务器,例如Oracle或MySql。链接(odbc)表的另一个显着优点是链接表允许来自本地文件的多个数据源,基于服务器等。并且,您也可以拥有本地表(ADP不允许客户端中的本地表)。

因此,如果您实际使用的是ADP或不使用ADP,那么您在编辑或不编辑服务器端访问内部对象的能力将由上述方案确定。

+0

亲爱的阿尔贝,感谢您的详细答案。我找到了一个管理SQL Server的工具(我正在使用这个ADP版本),可以显示我的程序名。不幸的是,我发现它们是加密的,所以我将不得不联系数据库的开发人员以访问这些过程的代码。不管怎样,谢谢你! – janoliver 2010-06-25 10:39:30