MS Access 作为企业软件? [英] MS Access as Enterprise Software?

查看:24
本文介绍了MS Access 作为企业软件?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我的用户经常遇到的问题是他们希望快速获得解决方案,这意味着他们有时会说哎呀,我会卷起袖子在 Access 中完成它 - 它已安装在我的桌面上".

Something that I often run into with my users is their desire to aquire solutions quickly means that they sometimes have said "Heck, I'll just roll up my sleeves and do it in Access - it's installed on my desktop".

有时,我们很幸运,创建 Access 数据库的人将其后端连接到 SQL Server,因此至少经常出现的 mdb 文件问题不是问题.

Sometimes, we're lucky and the person that creates the Access database back-ends it to a SQL Server, so at least the mdb file issues that often come up aren't an issue.

但是,我认为将 Access 前端部署到 SQL Server 数据库作为具有数千用户和数十万行的企业解决方案仍然存在问题.

However, it is my opinion that rolling out an Access front-end to a SQL Server database as an enterprise solution with thousands of users, and hundreds of thousands of rows is still problematic.

您对此有何看法?有哪些潜在的陷阱?

What are your opinions on this? What are some of the potential pitfalls?

这是一个完全可以接受、稳定、可维护且健壮的解决方案吗?

Is this a perfectly acceptable, stable, maintainable, and robust solution?

推荐答案

我在这个场景中进行了大量工作.事实上,作为一名顾问/开发人员,访问前端 SQL Server 后端一直是我过去 10 年来的主要工作的重要组成部分.这并不意味着我喜欢访问 ;-)

I've worked with this scenario a great deal. In fact as a consultant/developer Access front end SQL Server back end has been a significant part of my bread and butter work over the past 10 years. Which doesn't mean I like Access ;-)

在 AJAX 被普遍采用之前,它是一个完全合理的解决方案.仍然有大量中小型应用程序放在 Access 中,它们完美地运行定制的业务系统,我怀疑它会在未来 10 年或更长时间里消失——实际上 Access/SQL 可能会成为21 世纪的科博尔.如果您在绿地"站点上工作,那么现在从头开始构建时几乎没有理由部署 Access - 但如果您确实继承了现有应用程序,那么重写的成本可能不值得且难以通过用户.

Up until the common adoption of AJAX it was a perfectly reasonable solution. And there's still vast numbers of small to medium sized applications put together in Access out there that run bespoke business systems perfectly happily and I doubt it's going to go away for the next 10 or more years - indeed Access/SQL is probably going to be the Cobol of the 21st century. If you're working on a 'green field' site then there is now virtually no excuse for deploying Access when building from scratch - but if you do inherit an existing application then the costs of a rewrite may not be worthwhile and difficult to pass with the users.

Access 确实有一些仍然很重要的优势 - 如果提议转换为 Web 应用程序可能会出现问题

Access does have some advantages that are still significant - and can present problems if proposing to convert to a web app

  1. 很快.对于简单的 CRUD 工作,编写和部署与任何其他实际解决方案一样快.
  2. 内置报告很容易运行,而且系统非常强大.按需为用户创建和部署新报告通常非常容易.
  3. 它与 Office 集成良好.当希望将 Access 应用程序移动到 Web 应用程序时,这往往是一个阻碍.对于部门规模"的 Access 应用程序来说,与 Outlook、Word 或 Excel 集成紧密的情况非常普遍——并且通常这三者都集成.这是处理实际情况时的主要问题.编码人员很容易低估这对于此类系统的日常使用的重要性,并且即使给用户带来很小程度的额外麻烦,通常也会遇到很大的阻力 - 通常足以完全破坏项目.
  4. 如果您在一个规模合理的部门(大约有十几个人)工作,那么办公室里有人自以为是一名计算机专家是很常见的.如果处理不当,这些人可能会造成很大的痛苦,但同样可能是一项重要的资产.如果我有这样的人,我会尝试让管理层向他们发送一两个 Access 课程,以便他们可以编写简单的查询和报告,并为他们设置一个单独的 Access 应用程序他们拥有具有对 SQL 数据库的适当(受限)访问权限.然后,您可以信任此人为他们的同事制作简单的报告等.这可能是一个真正的双赢 - 你获得了一个站在你这边并且会使用你作为导师的人 - 在部门中为你提供现成的拥护者 - 他们让你的头发变得笨拙的报告工作.他们获得了很多荣誉和工作满意度——甚至是潜在的职业道路.使用除 Access 之外的任何其他系统执行此类操作要困难得多,几乎不可能.
  1. It's quick. For simple CRUD work it's as fast to write and deploy as any other realistic solution.
  2. Built-in reporting is easy to get running and remarkably powerful given the system. It's usually pretty easy to create and deploy new reports for users on demand.
  3. It integrates well with Office. This one tends to be the show-stopper when looking to move Access apps to web-apps. It's extremely common for a 'department-size' Access application to tightly integrate with Outlook, Word or Excel - and often all three. This is the major problem when dealing with real-world situations. It's very easy for coders to underestimate the importance of this for everyday usage of such systems and the imposition of even a small degree of additional hassle for the users will generally be met with much resistance - often enough to completely scupper the project.
  4. If your working with a reasonable sized department - a dozen people or so - it's quite common for there to be someone in the office who fancies themselves as a bit of a computer wizard. These people can be a major pain if handled incorrectly, but equally can be a major asset. If I have such a person I will try to get management to send them on an Access course or two so they can write simple queries and reports, and set up a separate Access application for them which they own which has appropriate (restricted) access to the SQL database. You can then trust this person to handle producing simple reports and the like for their colleagues. This can be a real win-win - you gain someone who is on your side and will use you as a mentor - a ready-made advocate for you in the department - and they keep the grunt report work out of your hair. They gain a lot kudos and job satisfaction - and even a potential career path. It's far harder, well near impossible, to do this kind of thing with any other system but Access.

主要的实际缺点

  1. 部署可能是一场噩梦.通常,如果您有一个非常严格定义的环境 - 一家小公司、单一部门、基于 citrix 或与 IT 部门密切控制其 PC 的分布式,那么您就可以了.作为跨多个公司的商业应用部署 - 只有在您可以收取大量维护费用的情况下(已经存在).
  2. 代码无法扩展.访问 VBA 代码,即使是由专业人士编写的,也很容易腐烂成意大利面.最终得到一个易于维护的 Access 应用程序是很常见的,但随着依赖项的增加,它逐渐变得不可维护.

所以我想说 Access 仍然有一席之地,它的使用在许多现实世界的情况下都是可以防御的,但如果情况允许,越来越多地选择更现代的解决方案.

So I'd say Access still has a place, and it's use is defendable in many real world situations, but increasingly it's better to choose a more modern solution if circumstances permit.

这篇关于MS Access 作为企业软件?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

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