SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

Windows PowerShell 活用編

Windows PowerShell 活用編(11)
Oracleデータベースの操作1


  • X ポスト
  • このエントリーをはてなブックマークに追加

データの取得

 データセットにデータを取得するには、OracleClientではOracleDataAdapterクラスを使用します。

 OracleDataAdptrerクラスの引数にはデータを取得するためのSQLコマンド文と作成しておいたOracleConnectionを渡します。

 例としてSQL文はEMP表の全件データを取得するように記述しました。

PS> $strSQL = "SELECT * FROM EMP"
PS> $oraDa = New-Object System.Data.OracleClient.OracleDataAdapter($strSQL, $OraConn)

 ここまでがデータを取得するための前準備となります。

 実際のデータの取得はOracleDataAdapterクラスのFillメソッドを使用します。Fillメソッドの引数には、取得したデータを格納するデータセットを渡します。

[void]$OraDa.Fill($dtSet)

 上記コードを実行すると$dtSetというデータセットにテーブルが1つ作成され、その中にデータが格納されます。

データの参照

 データはデータセットの中のデータテーブルに格納されています。データセットは複数のデータテーブルを持つことができるため、各データテーブルは配列オブジェクトとして表されます。

 今回は、新規で作成したデータセットにデータを取り込んだため、1つのデータテーブルが作成されています。

 1つめのデータテーブルは配列の要素番号が0となり

PS> $dtSet.Tables[0]

 として参照することができます。

全レコードを取得する

 データが格納されているテーブルは$dtSet.Tables[0]であるということが分かりました。

 まずは下記のように入力してみてください。

PS> $dtSet.Tables[0]

 下図のように、取得したデータが1レコード単位で表示されます。

 この表示は見づらいので、PowerShellのコマンドレットFormat-Tableと組み合わせて以下のようにすると

PS> $dtSet.Tables[0] | Format-Table

 罫線こそ表示されないものの、表形式で表示されるため非常に見やすくなります。

次のページ
コマンドレットとの連携

この記事は参考になりましたか?

  • X ポスト
  • このエントリーをはてなブックマークに追加
Windows PowerShell 活用編連載記事一覧

もっと読む

この記事の著者

HIRO(ヒロ)

HIRO's.NETのHIROです。とある半導体工場のSEです。VB.NET, C#, PowerShellによるプログラミングを楽しんでいます。最近はBlog でPowerShellについて書いています。2008/07/07にPowerShell from Japan!!というサイトを立ち上げまし...

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

  • X ポスト
  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/3966 2012/07/09 15:30

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング