简体   繁体   English

Access数据库是否独立于MS Access应用程序?

[英]Is Access database independent of MS Access application?

I use a .NET language to code an application to access MS Access database. 我使用.NET语言编写应用程序来访问MS Access数据库。 I would ask if it is possible to use my application and its database on a PC that doesn't have MS Access installed on? 我会问是否可以在没有安装MS Access的PC上使用我的应用程序及其数据库?

This is often misquoted and misunderstood. 这常常被误引和误解。 The advice here is also correct. 这里的建议也是正确的。

So the so called JET database engine has been a part of windows and pre-installed as a default installed component for more than 10 years. 因此,所谓的JET数据库引擎已经成为Windows的一部分,并作为默认安装组件预先安装了10多年。 In fact it was default on windows 98SE. 实际上它是Windows 98SE的默认值。 This means that a fresh new out of the box windows machine could with no installed software using something like windows scripting could open up these Access files. 这意味着一个全新的开箱即用的Windows机器可能没有安装软件使用像Windows脚本这样的东西可以打开这些Access文件。

So you could from VB.net, c# etc. open up these files without any additional installed components. 所以你可以从VB.net,c#等打开这些文件,而无需任何额外安装的组件。

However keep in mind that since office 2007, if you use the new accDB format files as opposed to mdb, then you WILL have to install a newer version of the JET engine. 但请记住,自2007年以来,如果使用新的accDB格式文件而不是mdb,则必须安装较新版本的JET引擎。 This newer version of the engine is compatible with older mdb files, but is required for opening access 2007 and beyond format databases. 此较新版本的引擎与较旧的mdb文件兼容,但是在打开Access 2007及更高版本的数据库时是必需的。 (accDB/accDE). (ACCDB / ACCDE)。

There's also a connection ability in this new engine to open up SharePoint tables or even connect to office 365 publish Access databases (and you can use SQl against those office 365 tables). 此新引擎中还具有连接功能,可以打开SharePoint表,甚至可以连接到Office 365发布Access数据库(并且可以对这些Office 365表使用SQl)。

So in all cases, you never did need to install the Access application itself on the computer, however you do need a version of the database engine. 因此,在所有情况下,您从未需要在计算机上安装Access应用程序本身,但是您确实需要一个版本的数据库引擎。

As noted for a very long time in the past, this database is and continues to be installed on windows by default. 正如过去很长一段时间所指出的那样,默认情况下,该数据库将继续安装在Windows上。

However as noted, for newer format databases with multi value support, SharePoint support, database triggers and store procedures, and also that of 64 bit edition of this database engine? 但是,如上所述,对于具有多值支持,SharePoint支持,数据库触发器和存储过程的新格式数据库,以及此数据库引擎的64位版本? Then you will have to download and install a newer version of JET Which as noted is now called ACE. 然后,您将不得不下载并安装更新版本的JET,如上所述现在称为ACE。

Keep in mind that while to the newer version of the data engine has table triggers and store procedures (that will run when you modify data from .net), I do believe that you need ms-access to edit + create the new store procedures and you cannot create or edit the table triggers and store procedures using the ACE object model. 请记住,虽然较新版本的数据引擎具有表触发器和存储过程(将在您从.net修改数据时运行),但我确实认为您需要ms-access来编辑+创建新的存储过程和您无法使用ACE对象模型创建或编辑表触发器和存储过程。

However, once table triggers and store procedures have been created, then once again you do NOT need Access installed on the computer for these table level triggers and procedures to run. 但是,一旦创建了表触发器和存储过程,您就不需要在计算机上安装Access来运行这些表级触发器和过程。

Create Virtual Machine of the MS Windows and test it there. 创建MS Windows的虚拟机并在那里进行测试。 Yes it's possible. 是的,这是可能的。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM