データセットをインメモリ・データストアとして使用したいと考えています。 私は、SELECT、INSERT、UPDATE、DELETE、CREATE TABLE、DROP TABLE、ALTER TABLE ADD COLUMN、ALTER TABLE DROP COLUMNを使用し、制約PRIMARY KEY、UNIQUE、NOT NULL、FOREIGN KEY、REFERENCESをサポートしたいと考えています。データセットに対してSQL文を実行するにはどうすればいいですか
答えて
誰かがこの商品の形で現実のものにしました。 http://www.queryadataset.com それは私が元々について http://www.queryadataset.com/Documentation/Expressions/tabid/80/Default.aspxを尋ねた機能のすべてをサポートしています。
申し訳ありませんが、それはデータセットの対象ではありません。
なぜこれをやりたいですか?
誰が、それはデータセットの目的ではないと言いますか? DataSetには完全なオブジェクトモデル、よく知られたインターフェイス、デザイナサポート、およびデバッグビジュアライザが用意されています。 「データセット」に関する情報を表示するためにホイールを再発明するのはなぜですか? – JJS
誰が言う?過去7年間の使用経験と、マイクロソフトと他の誰かがそれについて語ったことを読んでください。データセットがクエリを発行するものであることを誰も提案したことはありません。フィルタリングと並べ替え(DataViewを使用)はい、一般的なクエリプラットフォームではありません。これがSQL Server ExpressとCompactの目的です。 –
これは.Netですか?どのバージョン? 3.5以降では、IQueryableでSQLのようなlinqクエリを実行できます
メモリ内のデータストアでデータベースコマンドをテストする場合は、メモリ内のリレーショナルデータベースエンジンではないため、DataSetを使用する方法はありません。他の人は言っているように、DDLコマンドではなく、DataSetであらゆる種類のクエリを実行できます。私はさまざまなメモリ内または組み込みのデータベースエンジン(SqlLite、HSQL、Firebird)を見てきましたが、一般的にこれらのエンジンの制限のために、メモリ内のユニットテストSQL Serverコードに良い方法を見つけることに近づくことはありませんでした)。
アプリケーションに組み込みデータベースが必要な場合は、それらの製品を参照してください。 Sql Serverコマンドをテストする必要がある場合は、Sql Serverのインスタンスでそれらを実行する必要があります(Express、軽量、無料)。
私はDDLコマンドをメモリ内のストアでテストしたくありません。私は、SQLがDataSetインスタンスを操作するために提供する、明確に定義された文法を使用することに重点を置いていました。 – JJS
次に、質問を更新して、実際に文法を気にかけないようにする必要があります。これは、必要なAPIの単なる例です。 –
短い説明では、DataSetやその他の.NETデータ型でこれらの操作を実行できないということです。これらのコマンドはデータ自体に固有のものではなく、SQLをサポートするデータベースソフトウェアの一部です。これらの操作は、データベースサーバーや組み込みデータベースのようなものをサポートするソフトウェアでのみ使用できます。
あなたのしていることによっては、linqが役に立つかもしれませんが、あなたが言及した正確なSQL構文または仕様言語のビットを提供しません。 (ALTER TABLEなど)
プロジェクトで外部データベースを使用していない場合は、埋め込みデータベース(sqlite、Firebird、それ以外は何もわかりません)を使用することを検討することもできます。
DataSetインスタンスでこれらの操作をnativlyできないことはわかっています。私は操作を行うことができる補足的なAPIを誰かが知っているかどうか尋ねました。 – JJS
LINQしたい!それはあなたがあなたのデータに求めたすべての行動を実行することができます...そして、はるかにあなたがセクシーな気持ちを与えている間に、おそらくそれは簡単ではないはずです。それが戻ってデータベースへのメモリデータであなたを読み/書きに来るとき、それはもう少し提供していますよう
(あなたがとにかくADO.NETするために使用されている場合)、それはあなたのボックスをロックします
もLinq2SQLを見てください。 ..またはlinq2xml Webサービスを使用する場合。
テーブルから列を追加または削除できるLinq演算子が欠落しているはずです。そのメソッドが何であるかについて、MSDNドキュメントのURLを送ってください。 – JJS
おい、Googleを使って、チュートリアルを読んで、その答えが好きではないように、あなたは働きません。あなたの返事のいくつかは失礼です、私はあなたの周りに狩りの時間を過ごすしたくないです。ここの人々は、あなたが話したことに基づいてあなたを助けようとしています。 –
データセットが、取得したデータのクライアント側のメモリ内表現であるため、この操作を行うことはできません。
また、そのデータの提供元にという異例のです。そのため、データの元となるデータソースと同じ構文を使用することはできません。
データセットにはデータをフィルタリングするための独自の構文がありますが、SQLに大きく依存していません。
むしろ、あなたはあなたのDataSet内のデータを照会することで、より-SQLのような経験を与えるであろうLINQ to DataSetsを使用する必要があります。
あなたはLINQ(例えば.NET 2.0)を使用したくない場合は、「節のような」構文でフィルタを提供することを可能にする「選択」する方法があります。ここでは、MSDNのリンクがあります:
http://msdn.microsoft.com/en-us/library/system.data.datatable.select
これはので、私はそれはあなたが探しているものをすべて提供していることを知らないDataTableの方法です。また、更新/挿入/削除を実行せずに、データセットのサブセットのみを選択することもできます。
一時テーブルを使用することを検討してください。または、データベース接続間でデータを共有する必要がある場合は、標準テーブルにもなります。
メモリ内のデータセットの速度を求めている場合は、メモリ内のテーブルストレージ(MySQLとPostGreSQLなど)を調べ、テーブルストレージを設定することで他の人に騙される可能性があります例えば、RAMディスク上のスペース)。
短命テーブルはしばしば見落とさ、彼らは実際には非常に参考にされています。
- 1. raqendbに対してmoqを実行するにはどうすればいいですか
- 2. SQL ServerからListViewにデータセットを介してリストをロードするにはどうすればよいですか?
- 3. SQLで1対多の検索を実行するにはどうすればよいですか?
- 4. このデータセットに対して適切な出力を得るにはどうすればよいですか?
- 5. Androidエミュレータに対してコマンドを実行するにはどうすればよいですか?
- 6. 特定のキーボードショートカットに対してemacsコマンドを実行するにはどうすればよいですか?
- 7. テストデータベースに対してSeleniumテストを実行するにはどうすればよいですか?
- 8. 3つの円に対してcompareToメソッドを実行するにはどうすればよいですか?
- 9. 単一のjQueryオブジェクトに対して関数を実行するにはどうすればよいですか?
- 10. 1つのクラスに対してPexを実行するにはどうすればよいですか?
- 11. バッチスクリプトを実行しているドライブ文字を取得するにはどうすればよいですか?
- 12. 変更されていないソースファイルに対してantタスクを実行しないようにするにはどうすればよいですか?
- 13. Hibernate/HSQLデータベースに対して任意のSQL文をプログラムで実行するにはどうすればよいですか?
- 14. 長時間実行しているGoプログラムを実行するにはどうすればよいですか?
- 15. CRecordSetのSQLをオーバーライドしてから再クエリを実行するにはどうすればよいですか?
- 16. EmacsでどのOSを実行しているかを知るにはどうすればいいですか?
- 17. 特定の文字に基づいてワードラップを実行するにはどうすればよいですか?
- 18. このSQL SELECT文を実行するにはどうすればよいですか?
- 19. ADO.NETを使用して.sqlスクリプトファイルを実行するにはどうすればよいですか?
- 20. LINQ to Entitiesを使用してT-SQLクエリを実行するにはどうすればよいですか?
- 21. バッチファイルを使用して複数のSQLスクリプトを実行するにはどうすればよいですか?
- 22. MySQLを使用してINSERT文を実行するにはどうすればよいですか(C++で)?
- 23. SQLで複数のフィールドに対してmaxを選択するにはどうすればよいですか?
- 24. 私は、このSQLクエリを実行するにはどうすればよい
- 25. Capistranoでマイグレーションを実行するにはどうすればいいですか
- 26. フォアスクリーンでバッチファイルを実行するにはどうすればいいですか
- 27. プロセスを実行中に特定のSQL行をロックするにはどうすればよいですか?
- 28. 良いSQL検索を行うにはどうすればよいですか?
- 29. 孤立したプロセスグループで対話シェルを実行するにはどうすればよいですか?
- 30. LinqがGUIDを追加しないようにして、SQL Serverで実行できるようにするにはどうすればよいですか?
これを行う理由を拡張できますか?それはより有用な答えを生み出すのに役立ちます。 –
私たちの多くがJJSの質問にどのように答えてくれたかは素晴らしいです。しかし、彼が実際に望んでいたことを教えてくれると返事があったとすれば、さらに良いことになりました。もし彼が返事をしたら、答えのどれが彼が望むものに近いのか見ていくことは面白いでしょう。 –
申し訳ありません。この質問の電子メールアップデートを有効にしませんでした。私は私の返信が来ていないと言っている私的なメッセージを歓迎したでしょう。 DataSetの構造を問い合わせるためのオブジェクトモデルとインターフェイスは、すでに堅牢で、よく理解されています。 DataSetとDataTableのオブジェクトとそれらの構成要素を置き換えて混乱を減らすならば、私はそのことに関係する提案に触れています。 – JJS