質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
PostgreSQL

PostgreSQLはオープンソースのオブジェクトリレーショナルデータベース管理システムです。 Oracle Databaseで使われるPL/SQLを参考に実装されたビルトイン言語で、Windows、 Mac、Linux、UNIX、MSなどいくつものプラットフォームに対応しています。

Q&A

解決済

1回答

24516閲覧

[postgresql]pgadminで、バインド変数を含むSQLの実行

dthani

総合スコア131

PostgreSQL

PostgreSQLはオープンソースのオブジェクトリレーショナルデータベース管理システムです。 Oracle Databaseで使われるPL/SQLを参考に実装されたビルトイン言語で、Windows、 Mac、Linux、UNIX、MSなどいくつものプラットフォームに対応しています。

1グッド

1クリップ

投稿2016/04/12 03:23

Oracleでは、バインド変数を含むSQLの簡易実行方法として、
下記のサイトのやり方がありますが、
http://www.m-bsys.com/db/oracle-bind

postgresqlのpgadminで、バインド変数を含むSQLの実行方法は
ありますでしょうか?
ご存知の方、お教えください。
pgadminには、サポートされていないのでしょうか?

EKD👍を押しています

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

pgAdminのQuery Toolだと、ローカル変数(SET @VARIABLE = 5とか)は使えるようです。
いきなり未定義の変数を使わず、順番にローカル変数の宣言を行いながらやればうまくいくのかもしれません。

投稿2016/04/12 03:45

編集2016/04/12 03:47
退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

dthani

2016/04/12 05:08

ご回答ありがとうございます。 仰るとおりやってみたところ、下記の通り、エラーになります。 SQLエディタにSet @user ='aaa';を書いた後に、実行したいSQL文を書いて F5で実行したところ、下記エラーメッセージが出てきます。 ERROR: "@"またはその近辺で構文エラー SQLステート:42601 文字:5 実行方法が悪いのでしょうか?実行方法を教えてください。
退会済みユーザー

退会済みユーザー

2016/04/12 06:47 編集

ヘルプドキュメントより: http://www.pgadmin.org/docs/1.22/pgscript.html#pgscript また、Executeではなく、Execute pgScriptとしないといけないようです。 純粋にSQLではなく、"pgScript"というSQLを元にした方言であって、psql上などで動作させるPL/pgSQLとは違うこともご注意ください。
dthani

2016/04/13 02:27

ご回答ありがとうございます。 「pgScript」で調べたところ、下記サイトに、pgadminでは、F6で実行させると書いてありますね。 https://postgresql.g.hatena.ne.jp/pgsql/20090315 pgScriptでのselect文の書き方がわからない(PL/pgSQLのようにselect文を書くとエラーになる)ので、別途、pgScriptを勉強していきます。
退会済みユーザー

退会済みユーザー

2016/04/13 03:51

あくまでpgAdmin専用のSQL方言であるpgScriptという扱いなので、そこから何かしらのシステム開発に連携していくのは面倒だと思います。 Windowsであれば、A5:SQL mk-IIをフロントエンドにしてしまえばDB操作しやすいと思います。いきなりバインド変数を使っても大丈夫なので。
dthani

2016/04/15 08:27

ご回答ありがとうございます。 返信遅れてすみません。A5:SQL mk-IIで、いきなりバインド変数使えることを確認しました。ありがとうございます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問