什么是Microsoft Jet数据库,它适用于具有敏感信息的小型应用程序?

时间:2009-08-27 19:14:02

标签: asp.net sql jet

我正在计划一个新的ASP.NET项目,该项目将成为由在各公司工作的技术人员安装的产品。该计划将存储包括技术人员在内的工作人员无法轻易获取的敏感信息。

我需要在简单直接的安装与安全性和可靠性之间取得平衡。这些天的默认数据库似乎是C#开发人员的MS SQL,但是一些将要安装它的公司可能没有自己的SQL服务器,所以有人建议我使用Microsoft JET数据库。什么是MS JET是产品还是技术?数据库将是非常基本的几个表,我不需要SQL的所有功能,是否有任何数据库适合不需要像SQL一样的安装(即一个简单的文件)?

谢谢J

7 个答案:

答案 0 :(得分:8)

目前在.NET中执行无服务器数据库工作的首选方法是使用SQL Server Compact - 它具有数据库文件,并且不需要任何服务器进程 - 所有代码都直接在您的内部运行进程作为一个简单的DLL。

建议不要将Jet用作通用存储后端。它曾经是一个合理的默认选择,但现在Jet由Microsoft Access团队独家拥有,并将根据其目的进一步开发和定制。

答案 1 :(得分:3)

听起来SQLite可能是一个不错的选择,安装非常简单。您可以通过身份验证,加密等实现独立于您的数据库平台的安全性。

答案 2 :(得分:2)

我是Access和Jet / ACE的忠实粉丝,但对于敏感数据,Jet / ACE不是一个好选择,因为它无法像服务器数据库引擎那样真正得到保护。

尽管如此,许多认为他们的数据敏感且需要最高级别安全技术的人才会自欺欺人。

安全几乎总是一个人的问题,因为它是一个技术问题,即使使用最安全的技术,您仍然必须信任人,以便让他们访问他们工作所需的数据。您的数据库可能完全被锁定,但如果您可以信任您的系统管理员,那么您根本就不安全。

Jet / ACE对于特定应用程序可能足够安全。

就成本/效益比而言,考虑到所有因素,它可能是更好的选择。

但由于最初的问题是框架并且对该应用程序一无所知,我绝对建议不要使用Jet / ACE。

答案 3 :(得分:0)

MS Access应用程序的默认引擎由通用术语“Access Database Engine”知道。

'Jet'特指Access2007之前的数据库访问引擎版本。对于它的价值,Access2007的版本特定术语是'ACE'。

我不打算建议使用Access数据库引擎是否合适,而不是说它对于用户很少的小型独立应用程序很有用。

答案 4 :(得分:0)

连接到Microsoft Access(* .mdb)数据库时使用Microsoft JET ODBC驱动程序。这是支持嵌入式数据库的一种方式。

我建议不要使用Access来支持SQLLiteSQL Server Compact Edition之类的内容。使用其中任何一种,您将获得对SQL语法的更强大支持,并且更有可能提高性能。

答案 5 :(得分:0)

Microsoft JET数据库是Microsoft Access使用的技术。我强烈建议使用SQL Server Express(在Microsoft免费下载 - http://www.microsoft.com/express/sql/default.aspx)。 SQL Server Express有一些限制(最大同时连接数,2 GB数据库大小等),但我认为它比JET好很多。此外,如果您的应用程序得到大量使用并且需要一个“严肃”的数据库,您可以随时升级到SQL Server的常规版本。

答案 6 :(得分:0)

我会远离Jet。与几乎所有其他数据库相比,它存在性能问题。此外,它使用非标准版本的SQL(Jet-SQL),这意味着一旦您决定停止用锤子击打头部,您将很难将应用程序移植到不同的数据库。确实,即使T-SQL在数据库中也不是通用的,但Jet-SQL 真的不同。

加上它的Access,这意味着你的同伴每次提到它时都会嘲笑你。这可能不完全公平,但会发生。

相关问题