创建前端MDE [英] Creating the Front End MDE

查看:184
本文介绍了创建前端MDE的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我创建了一个用于跟踪指标的数据库,带有一些自动化技巧(电子邮件,.doc,.ppt演示等),一个非常大的主表和大量的表单/ GUI。这是我第一次担心一个MDE /前端的事情。所以如果你会回答几个问题,或提出任何建议,这将是非常感谢(我会讨厌所有这些工作,不利用)。

I created a database for tracking metrics, with some automation tricks (email, .doc,.ppt presentations, etc) with a very large Main-table, and lots of forms/GUI. This is the first time I have ever I worried about an MDE/front-end for the thing. So if you would be so kind to answer a few questions, or offer any advice, it would be greatly appreciated (I would hate for all this work to not be utilized).


  • 我需要做的第一件事是什么?它是2000版本,必须转换为03才能创建MDE,但是在我使用数据库分割器之前完成了吗?

  • What is the first thing I need to do? It the 2000 version that must be converted to 03 to create the MDE, but does that get done before I use the database splitter?

在数据库中的效果能否做到这一点?我有类似80表格,70查询,20+宏,12表等等,但是对象的数量防止一些这样的工作良好,一旦前端存在?

Will the amount of objects in the database effect the ability to do this? I have something like 80 forms, 70 queries, 20+ macros, 12 tables, etc...but does the amount of objects prevent some of this from working well once the front end is there?

当我拆分数据库时,我可以继续工作/对后端进行更改等,这些更改直接影响前端吗?

when i split the database, can I continue to work/make changes and such on the "back end", and have those changes directly effect the front end?

这些可能是一些基本问题,但我不知道答案所以.....谢谢!

These may be some basic questions, but I don't know the answer so.....Thanks!

推荐答案

这是我的2¢。

问题1 - 我从来没有使用数据库分割器感觉我有更多的控制手动做。如果你手动做,你可以做到一个没有数据库分裂器的版本。但是如果你使用分离器,那么 - 是的 - 你必须升级到一个有分离器的版本,然后才能做。

Question 1 - I have never used the database splitter as I feel I have more control doing it manually. If you do it manually you can do it to a version that does not have a database splitter. But if you do use the splitter then--yes--you will have to upgrade to a version that has a splitter before doing it.


  1. 备份所有内容。

  2. 在同一目录中创建一个文件副本。因此,如果您有MyApp.MDB使用新名称(例如MyAppDATA.mdb)创建一个副本到同一目录中。

  3. 打开新的DATA文件(MyAppDATA.mdb)

  4. 打开应用程序文件(MyApp.mdb)并删除所有表。

  5. 也在MyApp.mdb ...中,转到文件/获取外部数据/链接表菜单,将MyAppDATA.mdb中的表链接到MyApp.mdb。选择全部并创建链接。

  1. Backup everything.
  2. Create a copy of your file into the same directory. So if you have an MyApp.MDB create a copy into the same directory with a new name, such as MyAppDATA.mdb.
  3. Open the new DATA file (MyAppDATA.mdb) and delete all of the objects EXCEPT the TABLES.
  4. Open the App file (MyApp.mdb) and delete all of the tables.
  5. Also in MyApp.mdb...go to the File/Get External Data/Link Tables menu to link the tables in MyAppDATA.mdb to MyApp.mdb. Select All and create the links.

应该这样做。如果你拧紧了,你做了一个备份...对不对?

That should do it. And if you screw up you made a backup...right?

几个提示和陷阱...确保你去工具/选项,不显示系统和隐藏表。您只是不想从MyApp删除系统表。另一种方法是不要删除以MSys或USys开头的表。

A couple of tips and gotchas...be sure that you go to Tools/Options and that you are NOT showing System and Hidden tables. You just don't want to delete system tables from MyApp. Another way to do it is do NOT delete tables that start with MSys or USys.

问题2 - 无论你有多少对象。

Question 2 - Does not matter how many object you have. In fact you don't have that many objects anyway.

问题3 - 是...您将在MyAppData.mdb中进行后端更改,当您打开MyApp.mdb时这些更改将自动神奇地在那里查看和查询等。(在查询设计器中,您可能需要保存/关闭/重新打开以查看新字段,如果你在查询时做的)。除此之外的新表您必须使用文件/获取外部数据/链接表选项来创建指向新表的链接。

Question 3 - Yes...you will make backend changes in MyAppData.mdb and when you open MyApp.mdb those changes will auto-magically be there to see and query against etc. (In the query designer you may need to save/close/reopen to see new fields if you made the mod while in the query). The EXCEPTION to that is New Tables You will have to use the File/Get External Data/Link Tables option to create links to new tables.

需要记住的一点(我希望你已经意识到)拆分数据库的一个缺点是,当你部署前端文件,通常是相对数据的路径将因机器而异,并且在访问中没有表的自动重新链接。如果您的目标客户端具有完全访问权限,您可以始终使用工具/数据库实用程序/链接表管理器刷新到正确位置的链接。如果你不能这样做,那么你将必须做以下之一:

1.编写代码,为你自动重新链接。基本上它会检查链接...如果无效,它将提示用户的数据位置(或在INI文件中查找)并重新链接表。

2.始终部署应用程序到所有机器上的相同位置。如果你有你的应用程序的商业愿景,这不会工作...我提到它的学术原因。对于有限部署,您可以对每个机器上的文件放置进行很多控制。

3.将数据文件(MyAppDATA.mdb)放在网络共享上,并将表连接到网络使用驱动器映射或UNC(\myserver\mydata\ApplicationData\MyAppData.mdb)。后者是优选的,但是它们都具有与第二个相同的风险。

One thing to remember (and that I hope you already realize) is that the one downside of splitting the database is that when you deploy the front end file that usually the relative path to the data will vary from machine to machine and there is no automatic re-linking of tables in access. If your target clients have full access you can always use Tools/Database Utilities/Linked Table Manager to refresh the links to the right location. If you can't do that then you will have to do one of the following:
1. Write code that does the automatic re-linking for you. Basically it will check the links...if invalid it will prompt the user for the data location (or look it up in an INI file) and re-link the tables.
2. Always deploy your app to the same location on all machines. If you have commercial visions for your application this won't work...I mention it for academic reasons. It might be doable for a limited deployment where you have a lot of control over file placement on each machine.
3. Put the Data file (MyAppDATA.mdb) onto a network share and link the table across the network using a drive mapping or UNC (\myserver\mydata\ApplicationData\MyAppData.mdb). The latter is preferred but both of them run the same risks as number two.

Seth

PS此回答假设为Access 2003.

PPS如果您有商业视图的应用程序,那么表链接必须非常强大。
PPPS我同意评论者,你可能想采取暴跌,如果是在你的技能集,做SQL。

PS This answer assumes Access 2003.
PPS If you have commercial visions for your application then the table linking has got to be REALLY robust. PPPS I agree with the commenter that you may want to take the plunge and do SQL if it is in your skill set.

这篇关于创建前端MDE的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆