我通常不使用Microsoft产品。我在这里有一个MS Access 2007项目,我知道带有数据库的MSSQL Server有一些程序。我怎样才能让它们可见?我只能浏览表格和视图......
谢谢和问候, Jan Oliver
答案 0 :(得分:1)
当您说访问项目时,正在使用您正在处理项目的术语,或者您是否明确表示您正在使用访问数据项目? (ADP)。 ms访问术语ADP具有特定含义,这在您的上下文中非常重要。
在ms访问中,许多开发人员只需使用ODBC链接表将数据放在SQL服务器上。在ms访问中还有一个选项可以创建所谓的Access Data Project(ADP)。当您选择创建访问数据项目时,任何视图设计服务(如关系编辑器,表格设计等)看起来都像是在访问桌面客户端内部开发,但事实上幕后访问是发送DDL(数据定义)语言)命令SQL服务器在服务器端对象上进行那些修改。因此,您可以修改ms-access内的服务器端对象。创建ADP时,不存在本地表。
这意味着如果您没有使用访问数据项目,那么访问版本和SQL服务器必须更紧密地匹配。如果打开访问数据库并查看查询表,则应该看到列表中显示的存储过程。 Access应该让你修改它们。
所以看看文件扩展名,如果这实际上是一个访问数据项目,那么访问数据库的文件扩展名将是* .adp。
如果文件扩展名是mdb或accDB,那么这不是访问数据项目,而是传统的访问数据库,其中使用了到SQL服务器的链接表。这种非ADP的情况,那么你链接到的视图和表只会出现在tables表中。此外,您所做的任何设计更改都将使用SQL Server管理工具而不是访问客户端完成。因此,不会对表,视图和过程等进行更改,也不能像访问客户端一样在访问客户端内部进行更改。尽管存在这种限制,但大多数开发人员更喜欢使用链接表而不是访问数据项目,因为SQL服务器版本之间存在松散的联系。事实上,在这些情况下,甚至可以使用不同的数据库服务器,例如Oracle或MySql。链接(odbc)表的另一个显着优点是链接表允许来自本地文件,基于服务器等的多个数据源。并且,您还可以拥有本地表(ADP不允许客户端中的本地表)。
因此,如果您实际上正在使用ADP,则您在编辑或不编辑访问权限内的服务器端对象的能力将由上述场景决定。