MS Access 作为数据库
我们计划开发一个桌面应用程序,使用 MS Access 作为数据库。但我们有一定的疑问吗? 1.当我们在客户端计算机上开发后安装此应用程序时,它是否需要MS Acess? 2. 如果是,他们是否需要从 Microsoft 购买 MS Access 许可证还是免费的? 3.安装软件时如何检查系统上是否有MS Access?如果不是,我们如何才能将 MS Access 与我们的应用程序一起安装?
We were planning to develop a desktop application with MS Access as DB. But we have certain doubts ?
1. When we install this application after development in client machine does it require MS Acess ?
2. If Yes, do they need to buy licence of MS Access from Microsoft or is it free ?
3. How can we conduct a check while installing the software if MS Access on the system ? If not how can we install MS Access also along with our application ?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
在您对 Haz 和 duffymo 的评论中,您表示您的意图是将“大尺寸图像”存储在数据库中。这不是 MS Access 的最佳实践。由于图像的存储方式,数据库文件大小的增加将超过图像文件的大小。从 Access 2007 开始,有一种改进的存储方法可以减少这种膨胀,但这仍然是一个问题。此外,这可能会破坏交易,因为 Access 数据库文件的绝对硬连接文件大小限制是 2 GB ...您的数据库可能无法容纳足够大的图像来满足您的需求。
我不清楚您是否担心需要安装 Access 本身。对于最新的(自 Win 2000 起)32 位 Windows 版本,使用 Access db 文件所需的组件已作为操作系统的一部分包含在内。如果您使用的是 64 位 Windows,则可能需要获取 2007 Office System 驱动程序:数据连接组件
仅当您的应用程序使用 Access 不仅仅用于数据存储时,才需要安装 Access。使用 Access 作为前端客户端(带有 Access 表单、报告等)的应用程序需要安装某种形式的 Access,但不必是成熟的版本。您可以为 Access 运行时版本设计应用程序,该版本从 Access 2007 开始免费:
但是,如果您为应用程序前端使用其他内容(例如 Dot.Net),则不需要安装任何形式的 Access。
In your comments to Haz and duffymo, you indicated your intention is to store "huge size images" in the database. That is not a best practice with MS Access. Due to the way images are stored, the db file size will increase by more than the size of the image files. Starting with Access 2007, there is an improved storage method which reduces that bloat, but it is still an issue. Furthermore this could be a deal-breaker, because the absolute hard-wired file size limit for an Access db file is 2 GB ... your database might not be able to accommodate enough huge images to meet your needs.
I'm unclear about your concern over the need to install Access itself. With recent (since Win 2000) 32-bit Windows versions, the components required to use an Access db file are included as part of the operating system. If you're dealing with 64 bit Windows, you may need to get the 2007 Office System Driver: Data Connectivity Components
Installing Access should only be required if your application uses Access for more than just data storage. An application which uses Access as the front-end client (with Access forms, reports, etc.) would require some form of Access to be installed, but it needn't be the full-blown version. You could design your application for the Access runtime version, which is free of cost starting with Access 2007:
However, if you're using something else (e.g. Dot.Net) for your application front-end, you wouldn't need any form of Access installed.
切勿将大图像存储在访问数据库中。大数据库是慢数据库。使用 vba 检查和创建文件路径并将图像存储在数据库外部。联系我获取执行此操作的代码
Never ever store large images in an access data base. A big database is a slow database. Use vba to check and create file paths and store the images outside of the database. Hit me up for the code to do that
MS Access 通常是开发分布式数据库应用程序最便宜的方法,坦率地说,如果该工具满足您的要求,您应该让您的客户购买许可证。我认为从头开始构建桌面应用程序通常是荒谬的,因为您可能会花费超过 100 美元的时间来构建 MS Access 开箱即用的功能。除非您免费做这项工作,否则购买软件或软件组件来帮助加快交付始终是一个好主意。
需要注意的是。 Access Db 文件限制为 2GB。如果您必须存储超出此范围的数据,则需要将 Access 数据库连接到更大的数据库或创建复杂的分区策略。
MS Access is often the cheapest way to develop a distributed database application and frankly you should have your client buy a licenses it the tool meets your requirements. I think building a desktop application from scratch is often ridiculous when you'll probably spend well over $100 of your time building features that come out of the box with MS Access. Unless you're doing this work for free, buying software or software components to help speed up delivery is always a good idea.
One caveat. Access Db files are limited to 2gb. If you have to store data that exceeds this, you'll either need to connect the Access database to a larger database or create a complex partitioning strategy.
这取决于您的软件如何工作。您是否有调用 Access DB 的程序,或者您的程序是使用访问表单实现的?
如果您只是使用 Access 作为数据库
如果您使用 Access for DB 和程序
It depends on how your software works. Do you have a program that calls the Access DB, or is your program implemented using access forms?
If your just using Access as a DB
If your using Access for the DB and the program