Excel作为网站的后端?

我的老板带来的第三方开发者devise了比我们现在使用的ASP.NET + MSSQL Server 2005网站更好的系统。

这里是相关的规格:

  • Excel + ODBC作为数据存储
  • 使用老式ASP构build而不是ASP.NET

他的解决scheme与古代科技相比有没有明显的问题? 线程安全等?

让我这样说:“什么可以告诉我的老板(谁是部分技术人员)把这个代码从水里吹出来呢?”

谢谢,

报复的开发:)

Excel绝不能用作数据存储,

  1. 这不是一个数据库

  2. 它不会一次处理多个用户

  3. 不支持事务,所以如果在odbc调用中出现错误,excel文件可能会被丢弃。 (即使访问会更好,然后使用Excel,这并不多说)

  4. Excel是一个电子表格,专门用于分析数据,而不是用于存储数据。

直接从微软: http : //support.microsoft.com/kb/195951

重要提示:虽然ASP / ADO应用程序支持多用户访问,但Excel电子表格不支持。 因此,这种查询和更新信息的方法不支持多用户并发访问。

呃….它缺乏可扩展性:你只能有一些用户。 数据是重要的吗?

Allain,以及出现在这里的重大技术原因,我想你应该问自己:“老板为什么这样做?”

知觉是现实,如果你的老板只是部分技术性的,那么纯粹的技术推理就可能无法实现。

除了明显的架构弱点之外,这个怪物还有一些function让它对老板更有吸引力吗? 一般来说,人们不会故意做愚蠢的事情,在做CLM之前,先考虑你的上司来自哪里,这样可以帮助你。

同步处理单独的xls数据存储和sql server 2005的问题? 在我们的IIS服务器上,默认禁止传统的asp页面。 也许这是一个标志大声笑。

可怕的performance呢,因为Excel并不是用来作为数据库的呢? 告诉你的老板,Excel甚至不是一个单用户数据库(MS Access就是这样),更不用说为高性能而devise的多用户数据库了。

当然,通过使用纯ASP,您将无法访问所有库.NET框架(这当然是MS生态系统中所有图书馆开发人员都关注的内容)。 但是你要求1个理由,第一个更好。

我会用口头禅说,那些工作是错误的(假设他们是你的情况)。 这就像使用螺丝刀作为锤子一样。 对于一个钉子,它可能会有很多的汗水和眼泪。 对于一个真正的项目来说,这可能是注定的。

我会夸耀你熟悉的工具 – 在性能,安全性和维护(尤其是维护成本)方面,工具性能有多好。

你可以这样说,就像他正在付钱给一个用十年前的技术写一个新的应用程序,这个技术可能不再被支持(如果它仍然是…)。

呃…行限制?

以下是您可以告诉他的事情:提醒他当两个或更多人需要同时编辑同一电子表格时发生的噩梦。 现在告诉他,想象一下,那些不能互相打电话的百人相乘,告诉他们“closures电子表格,以便更新它”。 就是它的样子。

Excel电子表格是否会正确处理并发事务? 这不是为这种事情devise的,如果它做了一些坏事(例如,一次只允许一个ODBC连接,或者没有正确地locking并发更新),我不会对此负责。

这个excel文件将会被很多人同时打开而匆匆被破坏。 Excel作为后端数据存储的可伸缩性几乎不存在。 它有足够的时间保持数据完整性与其本地共享工作簿function…

BTW-这个第三方是你老板的亲戚吗? 哎呀…

古老的技术本身就是一个显而易见的问题。 你会永远在吗? 老板很难find新的开发者来维持这样的事情。 技术世界已经转移。