1

所以我正在编写必须将数千条记录插入 Microsoft Access 的软件。目前我正在使用 JET 的 RBAR(通过痛苦的行)方法。在询问如何加快流程之前,我写了一个关于 SO 的问题,并被告知使用 DAO 而不是 JET,因为它会更快,并避免 RBAR。

我现在处于准备实施更快解决方案的情况,但是,我还有一些问题。首先是一些简单的事情,有没有人知道 vb.net 中的 DAO 语法的好教程,因为我试图在网上寻找一个但一直在努力。还有人知道要使用的图书馆吗?

其次,避免使用 RBAR 方法将数据插入数据库的最佳方法是什么。我假设这是使用记录集,但我不确定如何实现其中之一,或者一次插入多行所需的 SQL 查询。

最后有人告诉我,ms-access 不是最好的使用方法,它很慢。有没有人对访问的不同替代方案有任何建议?我需要它是一个免费的商业许可证,我知道这是一个延伸。我只使用数据库作为我不需要访问提供的任何用户接口的数据的存储。我在 SO 上发现了一个关于此的问题,建议使用 SQLite、MySQL 或 FireBird。有谁知道这些解决方案与 Access 相比的速度以及它们是否仍可免费用于商业用途。

因此,我基本上是在寻找有关如何尽快将大量数据读/写到数据库的建议。任何帮助或建议将不胜感激。

4

2 回答 2

1

使用 MS SQL Express(免费版)进行批量插入:

http://www.sswug.org/articles/viewarticle.aspx?id=35680

基本上涉及使用批量插入语法并传入文件:

BULK INSERT Test..Clients FROM
'c:\TestData.csv'
WITH (
   FIELDTERMINATOR = ',',
   ROWTERMINATOR = '\n'
)
于 2012-10-16T14:25:58.040 回答
1

而不是访问,看看firebird 它免费且非常可靠。

Firebird 是一个关系型数据库,提供许多在 Linux、Windows 和各种 Unix 平台上运行的 ANSI SQL 标准特性。Firebird 为存储过程和触发器提供了出色的并发性、高性能和强大的语言支持。自 1981 年以来,它以各种名称用于生产系统。

Firebird 项目是 C 和 C++ 程序员、技术顾问和支持者基于 Inprise Corp(现称为 Borland Software Corp)于 7 月 25 日发布的源代码开发和增强多平台关系数据库管理系统的商业独立项目, 2000 年。

于 2012-10-16T14:26:22.133 回答