[pgsql-jp: 40765] Re: ストアドファンクションの順次実行

Itagaki Takahiro itagaki.takahiro @ gmail.com
2011年 5月 4日 (水) 04:46:44 JST


> ERROR: 42601: syntax error at or near ":"
>>      da.Fill(ds, "results");の部分でエラーになってしまいます。

:n_id に値をセットする処理が必要なのではないでしょうか?



> 以下が、エラーになるコードです。
>
>   public partial class FormReportsResults : Form
>   {
>   private NpgsqlConnection m_conn = new
> NpgsqlConnection(PostgreSQLTEst.Properties.Settings.Default.PostgresConnect);
>    // (接続は間違いなくできています)
>    private NpgsqlDataAdapter da = new NpgsqlDataAdapter();
>    private DataSet ds = new DataSet();
>     public FormReportsResults()
>      {
>   InitializeComponent();
>      }
>      private void FormReportsResults_Load(object sender, EventArgs e)
>           da.SelectCommand = new NpgsqlCommand
>           (
>               "SELECT create_tmp_records1(var_col_TIME_function(:n_id));"
>               + "SELECT
> insert_tmp_records1(var_col_TIME_sub_function(:n_id));"
>               + "SELECT create_tmp_records2(var_col_TIME_function(:n_id));"
>               + "SELECT
> insert_tmp_records2(var_col_COALESCE_sub_function(:n_id), :n_id);"
>               + "SELECT create_tmp_records3(var_col_TIME_function(:n_id));"
>               + "SELECT insert_tmp_records3(var_col_function(:n_id),
> :n_id);"
>               + "SELECT create_tmp_records4(var_col_TIME_function(:n_id));"
>               + "SELECT insert_tmp_records4(var_col_function(:n_id),
> :n_id);"
>               + "SELECT create_tmp_records5(var_col_TIME_function(:n_id));"
>               + "SELECT insert_tmp_records5(var_col_function(:n_id),
> :n_id);"
>               + "SELECT create_tmp_records(var_col_TIME_function(:n_id));"
>               + "SELECT insert_tmp_records(var_col_function(:n_id));"
>               + "SELECT update_tmp_records4(var_col_function(:n_id));"
>               + "SELECT update_tmp_records5(var_col_function(:n_id));"
>               + "SELECT * FROM tmp_records;",
>                   m_conn
>           );
>      da.Fill(ds, "results"); ' ←ここでエラー
>      CrResults myReport = new CrResults();
>      myReport.SetDataSource(ds);
>      CrvResults.ReportSource = myReport;
>       }


-- 
Itagaki Takahiro


pgsql-jp メーリングリストの案内