ホーム > コンピュータ > DataBase > PostgresSQL > Npgsql

NpgsqlCommand.ExecuteScalar()メソッドを使用して、一つの結果の値を取得します。[Npgsqlドキュメント]

作成日 2015.03.05
最終更新日 2015.03.05

概要

PostgreSQLデータベース・サーバのための、.NET データ・プロバイダNpgsqlのドキュメント(2014年7月25日・13改訂版)の和訳です。 旧版ドキュメント(外部サイト) の和訳は存在しましたが、現行版のドキュメントのものは見つからなかったので和訳しました。 PostgreSQLとC#の両方を学ぶための資料集めの一環としての作成しています。

原文

npgsqlマニュアル(2014年7月25日・13改訂版)(外部サイト)

公式ページのドキュメントです。英語で書かれています。

接続文字列パラメータ Connection String parameters

いくつかの筋書きでは、あなたは、関数から単一の値(スカラ)を取り出すことだけが必要です。 Commandオブジェクト上でExecuteScalar()メソッドを使用します。:


using System;
using System.Data;
using Npgsql;

public static class NpgsqlUserManual
{
  public static void Main(String[] args)
  {
    NpgsqlConnection conn = new NpgsqlConnection("Server=127.0.0.1;Port=5432;User Id=joe;Password=secret;Database=joedata;");
    conn.Open();

    NpgsqlCommand command = new NpgsqlCommand("select version()", conn);
    String serverversion;

    try
    {
      serverversion = (String)command.ExecuteScalar();
      Console.WriteLine("PostgreSQL server version: {0}", serverversion);
    }


    finally
    {
      conn.Close();
    }
  }
}
			

また、あなたは、「select count(*) from table1」のような、レコードセットを返す問合せに対して、 ExecuteScalarを使用する可能性があります。しかしながら、一連の複数のレコードを返す関数を呼び出すとき、 1行目の最初の列は、(DataSet.Tables[0].Rows[0][0])だけが返されます。 一般に、単一の値を返すどんな問合せも、Command.ExecuteScalarを呼び出す必要があります。

inserted by FC2 system