をカスタムドライバーのためのシステム。データです。共通
-
20-09-2019 - |
質問
背景:
当社のC#の応用を生成し、実行をクエリーの複数種類のデータベース(Oracle、SQL Server、MySQLが要件にも適用して独自のファイル形式です。
- 名前空間には、これまで利用するシステム。データです。一般的です。
- の質問をする必要がある非自明な形を描画する領域を選別し、エイリアスで、部分文字列の方法および文字列concatenations)
当初、変換の内容の独自のファイルをCSVが存在するドライバ {Microsoftテキストドライバ(*.txt;*.csv)}.しかし、クライアントに必要な温度のファイルが生成され、実現されなければならなけます。
をODBCドライバーはクエリのファイルを直接うも時間-要求されました。そこで、考えをドライバー(ODBC、また"組み込み"SQLITE ODBCドライバーです。内側をドライバーまでの荷重の内容をCSVファイルを"メモリデータベース"し、クエリの内ODBCドライバーです。
私の質問:
- なこのソリューションも実現可能?
- どこまを作成するためのODBCドライバのか"
感謝
解決
を使用する場合はSQLiteとして、バックエンドである可能性があるとは思いものはなぜできない使用に対する検査.NETプロバイダをSQLiteデータベースのように システム。データです。SQLite.
からのコメント、という思いを大切にしている効果をODBC ADO.NETプロバイダのためのすべてのデータベース接続(システム。データです。Odbc).が必要な場合は、同じスキーム、カスタムODBCプロバイダのものですネイティブCで開発すると、割としっかりとした辛いと思い).
別の言い方をするデータを変更する場合はパラメータをDB(最初の二つのSQLとの接続文字列):ADO.NETプロバイダを使用するようで れることが可能になっ設定ファイル, の providerName
属性)に指定します。この方法を使用できる他のADO.NETプロバイダをご用意。
それまでラップはSQLiteのプロバイダ独自のカスタム、ADO.NETプロバイダは、この世代の人口はSQLite DBです。利点このソリューション:純管理します。います。
他のヒント
クライアント要求が奇数です。いつもあなたはファイルからの読み取りされ、関連するファイルが存在します。
彼らがしたい場合は、メモリ内の自分の作品(再び奇妙な顧客は)RAMディスクへの上にCSVを置きます: http://members.fortunecity.com/ramdisk/RAMDisk/ramdriv001.htm
あなたは、パフォーマンスと安定性を心配している場合、の構築とODBCドライブが非trival仕事です。
と思いソリューションは時間がかかります。すでに、既存ソリューションのために何をしようとしています。その一部をご紹介を交互に行います。
してみませんLinqテキスト/csvファイルとは何ですか?
- http://www.codeproject.com/KB/linq/LINQtoCSV.aspx
- http://blogs.msdn.com/ericwhite/archive/2008/09/30/linq-to-text-and-linq-to-csv.aspx
両方のシミュレーションにおいてはます。
もうひとつは、出力する事が出来ますファイルをxmlでcsvまたはテキスト(そしてもっとも輸出をxmlでいただいた場合、処理は私のコードとします。以上のご利用System.Xml またはLinqのXml化を行う事業です。
た場合のみに限られませんを一時ファイルは、利用するようにしてメモリモードのSQLite.こちらのサンプルの接続文字列で源):
Data Source=:memory:;Version=3;New=True;
いたのですが、これは単純な構築本格プロバイダです。$