1

だから私は何千ものレコードを Microsoft Access に挿入する必要があるソフトウェアを書いています。現在、私はJETでRBAR(行を苦しめる行)アプローチを使用しています。プロセスを高速化する方法を尋ねる前に SOに関する質問を書きましたが、JET の代わりに DAO を使用する方がはるかに高速で、RBAR を避けるように言われました。

私は現在、より迅速なソリューションを実装する準備ができている状況にありますが、さらに質問があります。まず簡単なことですが、vb.net で DAO 構文の優れたチュートリアルを知っている人はいますか? オンラインで探してみましたが苦労しました。また、代わりに使用するライブラリを知っている人はいますか?

次に、データベースにデータを挿入するための RBAR アプローチを回避する最善の方法は何ですか。これはレコードセットを使用していると思いますが、これらのいずれか、または一度に複数の行を挿入するために必要な SQL クエリを実装する方法がわかりません。

最後に、ms-access は遅いため使用するのに最適ではないと言われました。アクセスするための別の代替手段の提案はありますか? 私はそれがストレッチであると知っている無料の商用ライセンスである必要があります. データベースは、アクセスが提供するユーザー インターフェイスを必要としないデータのストアとしてのみ使用します。これについて、SQLite、MySQL、または FireBird を示唆する SO に関する質問を見つけました。Access と比較したこれらのソリューションの速度と、まだ商用利用が無料かどうかを知っている人はいますか?

だから私は基本的に、大量のデータをデータベースにできるだけ早く読み書きする方法についてのアドバイスを探しています。どんな助けや提案も大歓迎です。

4

2 に答える 2

1

アクセスする代わりに、 firebirdを見てみましょう 。無料で非常に信頼性があります。

Firebird は、Linux、Windows、およびさまざまな Unix プラットフォームで実行される多くの ANSI SQL 標準機能を提供するリレーショナル データベースです。Firebird は、ストアド プロシージャとトリガーに対して優れた同時実行性、高性能、および強力な言語サポートを提供します。1981 年以来、さまざまな名前で実稼働システムで使用されています。

Firebird プロジェクトは、7 月 25 日に Inprise Corp (現在の Borland Software Corp) によってリリースされたソース コードに基づいて、マルチプラットフォームのリレーショナル データベース管理システムを開発および拡張する、C および C++ プログラマー、テクニカル アドバイザー、およびサポーターによる商業的に独立したプロジェクトです。 2000年。

于 2012-10-16T14:26:22.133 に答える
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 に答える