我应该在这个VB.NET应用程序中使用什么数据库?

时间:2009-06-17 07:06:56

标签: sql vb.net visual-studio-2008 sql-server-ce

我的数据库必须以任意间隔手动更新,新信息放在不需要结构修改的标准表上。一个应用程序将更新数据库 另一个应用程序,我将分发的应用程序(仅限于朋友和家人,但不需要任何安全功能,如加密数据库)将读取数据库并在标签,列表视图等上使用其数据。

问题是,我是任何类型编程中完全成熟的n00b的完美定义,但仍然不知道使用什么数据库。

我认为我应该使用SQL CE(* .sdf)文件,并将该数据库存储在FTP上。然后,每次运行“客户端”应用程序时,我都可以下载并从中获取数据,并单击某个按钮(“连接”)。 经过一些硬核谷​​歌搜索,我发现如何使用这个连接字符串连接到sdf的东西:

Provider=Microsoft.SQLSERVER.CE.OLEDB.3.5;Data Source=D:\Documents and Settings\Camilo\JCTM.sdf

所以它连接,或者至少没有显示任何错误。

我不知道使用sdf SQL CE文件作为数据库是否是一个好主意,如果它太难了我可能会选择XML吗?你们有什么建议,在VB.NET中实现非常简单的数据库最简单的方法是什么?

通过简单的数据库我的意思是: - 无需搜索 - 除了在包含列和行的表上存储字符串之外,没有高级功能 - 通过不同的VB.NET应用程序轻松访问,阅读,编辑等

sdf是个好主意吗?

3 个答案:

答案 0 :(得分:2)

我建议Sql Server Express它是免费的,并且可以作为安装过程的一部分与.net应用程序一起重新分发。

挑战将是同步不同客户之间的变化。如果您可以访问FTP服务器,则可以在IIS中托管网站。如果你能做到这一点,你可以使用webservices并对一个数据库进行读取,而不是复制一个本地数据库。

答案 1 :(得分:0)

我从Microsoft Access开始,因为它有自己的用户界面,可以很好地使用.NET。

您也可以尝试使用SQLite的ADO.Net实现,我也发现它非常有用。

答案 2 :(得分:0)

幸运的是,您可以抽象出需要关注用于存储数据的后端数据库。

ODBC(开放式数据库连接)和OLEDB(对象链接和嵌入,数据库)等技术允许您将后端数据存储的关注限制为制作连接字符串的任务。在您的示例中,连接字符串显示“我将通过其OLEDB提供程序连接到SQL Server CE数据库,并且它实际位于D:/ ...

在代码中,您使用标准OLEDB机制来访问和管理数据库。由于这种抽象,如果您愿意,可以将OLEDB提供程序用于SQL Server,Oracle,XML,Access或逗号分隔的文本文件作为后备存储,并且您需要对代码进行的唯一更改是连接字符串。您的选择应该是选择您拥有最初设置和管理工具和专有技术的数据库。