为Delphi项目选择正确的数据库

时间:2013-08-23 18:35:15

标签: database delphi delphi-xe2 dbisam

我正在使用Delphi XE2进行开发。

我正在为小学和中学计划一个软件。这所学校有1500名学生。数据库模型是关系型的,我们计划随着岁月的流逝保持每个学生的整个历史。 (在某些时候它将被存档,但大多数关系将保持很长时间)

我曾经使用Elevate Software的DBISAM V4编写Delphi应用程序。我持有它的许可证,所以它仍然可以使用它。

但是我最近接触过很多使用Firebird的公司,有些使用Postgres和许多使用MySQL的网站。

我认为没有必要去付费数据库,因为这类客户对投资很敏感。所以任何可以免费使用的数据库,以及继续使用DBISAM的选项。我喜欢它,但它已经老了。

我更喜欢将业务逻辑放在软件上而不是数据库中,因此不需要在数据库端复杂的逻辑或过程。

我的问题是:选择正确的数据库需要考虑什么?

2 个答案:

答案 0 :(得分:2)

Wiki post可以为您提供帮助。除此之外,您还必须决定使用OLE-DB,ODBC或DBX作为中间件技术。取决于您将找到哪一个或不支持Delphi。

另一个标准包括数据库选项的专有技术以及安全性和可伸缩性的限制/要求。

但是,无论您选择哪种DBMS,我最好的建议是在专用服务层中隔离对它的访问,这样您的大多数应用程序都不会直接依赖它。

在我的位置,我会根据域类对应用程序进行建模,并投资于持久层。如果将来必须使用其他DBMS,大部分代码都将被保留。

答案 1 :(得分:1)

DBISAM将在这里工作,您甚至可以在Delphi中编写Web服务,以提供对平板电脑等的访问。您需要开始考虑这里真正重要的事情,例如用户所处的平台,总用户数,同时使用数据库的用户数(平均值和峰值),每个学生保留的行数,每天添加/删除/更新的行数等等.DBISAM的SQL有限。它做了很多,但不是你可以在其他数据库中做的一切。他们的新产品ElevateDB解决了大多数不足,包括Unicode。