簡単なデータ操作を可能にするLINQ
翻訳校正:村上雅章・野崎裕子
LINQ(.NET統合言語クエリ)のお陰で、開発者はSQLを用いることなく、自身が選んだ言語でデータアクセスを行えるようになった。今回は、名前空間の紹介やコード例によってLINQの概要を説明している。
LINQ(.NET Language-Integrated Query:.NET統合言語クエリ)は、特にMicrosoftが.NETプラットフォームの最新リリース(手始めにC# 3.0とVisual Basic 9.0で対応)とVisual Studio 2008(関連英文記事)でそれを採用したことで、大きな注目を集めている。
LINQは基本的に、SQLを用いることなく、開発者が自身の選んだ言語でのデータアクセスを可能にするものである。.NETプラットフォームのコンテキストにおいて、LINQは.NET Frameworkの拡張セットであり、言語に統合されたクエリ操作、セット操作、変換操作を含んでいる。現在はC#とVisual Basicにおいて、データ操作のためのクラスライブラリを用いることで、それら言語のシンタックスを自然なかたちで拡張している。
LINQという名前において鍵となる単語はintegrated(統合)である。これは、開発者が自らの開発言語(現時点でLINQをサポートしているのはC#とVisual Basic)を用いたデータソースの処理が可能になるということを意味している。この統合によってSQLに精通する必要がなくなるため、開発者はバックエンドのデータ処理に好きなプログラミング言語を使用することができるわけだ。
LINQはバックエンドにあるどのようなデータソースでも処理できるよう設計されているため、開発者はVisual Studio 2008といった、自らが使用する統合開発環境(Integrated Development Environment:IDE)の持つ多くのメリットを享受することができる。これによって、外部データにアクセスするコードに対するコンパイル時のシンタックスチェックや静的な型付け、コードアシスト(これらはSQL Server Enterprise Managerのような外部ツールを使用する場合には使えない機能である)を行えるようになる。
Microsoftは以下のような3種類の実装を用意している。
- LINQ to Object:メモリ内にあるデータの検索および操作を行う。
- LINQ to ADO.NET:これには3つのバリエーションがある。すなわち、オブジェクトのリレーショナルマッピングを実装したLINQ to SQL(リレーショナルデータを処理する。サポートはSQL Serverのみ)と、LINQ to DataSet(ADO.NETのデータセットを処理する)と、LINQ to Entities(MicrosoftのORMソリューション)である。
- LINQ to XML:XMLデータソースの検索および操作を行う。
LINQのこういった3つの機能はさまざまな.NETクラスライブラリを通じて提供されている。
- ホワイトペーパー
- 企画特集
◆エン・ジャパン厳選求人☆毎週更新◆
パンデミック対策特集
今注目の「サジェスト検索」−デモ掲載中
ロリポップ!がリニューアル
インターネット上の悪意を未然に防ぐには?
御社のログ活用しませんか!?
ESBでIT投資の無駄を劇的に解消する
【徹底対談】運用管理ツールの賢い使い方
集積度も性能も、業界最高水準のブレードPC
セキュリティ&ユーザ事例【SIer Club】
そのストレージで仮想化に対応できますか?
ストレージメディア特設サイト開設
仮想環境を実現するソリューション特集
中小企業のセキュリティリスクとは?
SOA、BPM、SaaS −今、企業に必要なこと
- エンタープライズにおけるSUSEの強み
- サービス・ドリヴン・データセンター
- ■ストレージ容量50%削減保証■
- サーバー監視・運用のコストを削減するには
- 話題のタグ
Windows 7はLinuxへの切替が簡単:注目の仮想ディスクフォーマット「VHD」
iPhone OS 3.0で変わった「絵文字」
OSSのクラウド基盤「Eucalyptus」を使う(4)--インストール〜ノード構築
俳優経験者が指南する「人前で上手く話すためのティップス10選」
「うるまでるびペイント」登場:絵は上手下手ではなく制作過程に楽しみが
待てば回路の日和あり--「iPhone 3GS」発売、しかし――