初夢 ジャンボ 宝くじk8 カジノLINQ(リンク)の基礎知識仮想通貨カジノパチンコ本巣 市 パチンコ

初夢 ジャンボ 宝くじk8 カジノLINQ(リンク)の基礎知識仮想通貨カジノパチンコ本巣 市 パチンコ

初夢 ジャンボ 宝くじk8 カジノLINQ(リンク)の基礎知識仮想通貨カジノパチンコ本巣 市 パチンコ

法人 口座 ビット コインk8 カジノ 特集:C#プログラマーのためのLINQ超入門Insider.NET

パチスロ 塾長 現在 

「特集:C#プログラマーのためのLINQ超入門」のインデックス

連載目次

 Visual Studio 2008(以下、VS 2008)にはさまざまな新機能が追加されていますが、最大の新機能といえばやはり「LINQ」(「リンク」と読みます)でしょう。

 LINQとは、

Language INtegrated Query

の略で「統合言語クエリ」と訳されますが、もう少し分かりやすくいい換えれば、

言語(C#やVisual Basicなど)のコード内に記述できるクエリ

となります。クエリとは「問い合わせ」です。開発でクエリといえばデータベース検索に使われるSQL文が代表的ですが、LINQではSQL文に似た構文によりクエリを記述し、データベースをはじめ、さまざまな対象から、データの検索や集計、取得などが可能になります。

 LINQによるクエリをコード内に記述できるようにするため、C#やVisual Basicは拡張されバージョン・アップしています。LINQが利用可能な言語は、Visual Studio 2008とともに登場した.NET Framework 3.5に含まれるC# 3.0(以降、単に「C#」)やVisual Basic 2008(=Visual Basic 9.0)です。また.NET Framework 3.5のクラス・ライブラリには、LINQのクエリを実行するのに必要なクラス群が追加されています。

 本稿ではC#プログラマーの方に向けて、LINQを使ううえで最低限必要な知識を分かりやすく解説していきます。これからLINQを学ぼうという方の最初の一歩となれば幸いです。

LINQで記述された問い合わせ

 まずはLINQにより、これまで記述していたデータベースの問い合わせのためのC#のコードがどのように変化するのかを見ていきます。

■ADO.NET+SQL文によるデータベースへの問い合わせ

 .NETでデータベースのクエリというと、これまではADO.NETのフレームワーク(クラス・ライブラリ)を使って行っていました。これは例えば次のようなコードになります。

using System;using System.Data.SqlClient;namespace ConsoleApplication1{ class Program { static void Main(string[] args) { // 接続文字列 string connStr = @" Data Source = .\SQLEXPRESS; AttachDbFilename = |DataDirectory|\NORTHWND.MDF; Integrated Security = True; User Instance = True;"; using (SqlConnection conn = new SqlConnection(connStr)) { // 発行するSQL文 string queryStr = @" SELECT OrderID, EmployeeID, OrderDate, ShipCountry FROM Orders WHERE ShipCountry = ‘Norway’"; SqlCommand command = new SqlCommand(queryStr, conn); conn.Open(); // コネクションのオープン SqlDataReader r = command.ExecuteReader(); // SQL文の実行 // 結果を1レコードずつ取得 while (r.Read()) { Console.WriteLine("{0}, {1}, {2}, {3}", r["OrderID"], r["EmployeeID"], r["OrderDate"], r["ShipCountry"]); } r.Close(); conn.Close(); } Console.ReadLine(); // キーが押されるまで待機 } }}

リスト1 ADO.NETによるデータベースの検索

 このサンプル・プログラムを実行するには、まずVS 2008でコンソール・アプリケーションのプロジェクトを新規作成します。次にサンプルのデータベース・ファイルである「NORTHWND.MDF」をソリューション・エクスプローラのプロジェクト名の部分にドラッグ&ドロップしてください。NORTHWND.MDFの入手については「連載:Visual Studio 2005によるWindowsデータベース・プログラミング 第4回」で解説しています。これによりデータソース構成ウィザードが起動しますが[キャンセル]ボタンをクリックしてキャンセルしてください。そしてリスト1のコードを入力します。

 リスト1のSQL文では、Ordersテーブルから、ShipCountry列の値が「Norway」のレコードを選択し、そのレコードの4つの列の値を取得しています。ADO.NETによるプログラミングに関しては、「連載:ADO.NET基礎講座 第2回 .NETデータ・プロバイダによるデータベースのアクセス Page2」を参照してください。

 リスト1の実行結果は次のようになります。

10387, 1, 1996/12/18 0:00:00, Norway10520, 7, 1997/04/29 0:00:00, Norway10639, 7, 1997/08/20 0:00:00, Norway10831, 3, 1998/01/14 0:00:00, Norway10909, 1, 1998/02/26 0:00:00, Norway11015, 2, 1998/04/10 0:00:00, Norway

リスト1の実行結果

 さて、リスト1で示したコードは、ADO.NETを利用したデータベース・プログラミングの基本的なコードといえますが、SQL文の記述に関しては次のような問題点があります。

SQL文を文字列で記述しなければならず、その構文が正しいかどうかは実行するまで分からない(コンパイル時に構文エラーを検出できない)SQL文の記述時にIntelliSense機能で列名を自動補完できないため不便

 例えばテーブルの列名のスペルを間違ったとしても、それは実行時にSQL文が送信されるまでエラーになりません。LINQはまずこれらの問題を解決してくれます。

LINQによるデータベース/コレクションへの問い合わせ仮想通貨カジノパチンコs 級 ライセンス サッカー

コメントを残す