PostgreSQL/PREPAREしたクエリーを削除する方法・DEALLOCATE
の編集
Top
/
PostgreSQL
/
PREPAREしたクエリーを削除する方法・DEALLOCATE
[
トップ
] [
編集
|
差分
|
バックアップ
|
添付
|
リロード
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
]
-- 雛形とするページ --
PostgreSQL/template0とtemplate1の違いについて
#navi(../) * PostgreSQLでPREPAREしたクエリーを削除する方法・DEALLOCATE [#a576421d] DEALLOCATEを使うとことにより、PREPAREで定義したクエリーを削除することができます。~ 以下に使用例を記します。 #contents #htmlinsertpcsp(db-top.html,db-sp.html) * 関連記事 [#b6e94297] -[[MySQLのPREPAREでPreparedStatementsを作成する方法>MySQL/PREPAREでPreparedStatementsを作成する]] -[[PostgreSQLのPREPAREでPreparedStatementsを作成する方法>PostgreSQL/PREPAREでPreparedStatementsを作成する]] -[[MySQLでPREPAREしたクエリーを削除する方法・DEALLOCATE>MySQL/PREPAREしたクエリーを削除する方法・DEALLOCATE]] * 動作確認環境 [#a5ad0980] - OS~ CentOS6 x86_64 - PostgreSQL~ PostgreSQL 8.4.13 * PREPAREで同じクエリー名を2回定義してみる [#of12a3b6] + psqlコマンドでsakuraデータベースに接続 -bash-4.1$ psql sakura psql (8.4.13) "help" でヘルプを表示します. + prepareでshow_nowを定義 sakura=# prepare show_now as select now(); PREPARE + 定義したshow_nowを実行 sakura=# execute show_now; now ------------------------------- 2013-01-23 23:26:57.612195+09 (1 行) + show_nowを再度prepareで定義するとERRORになる。 sakura=# prepare show_now as select current_timestamp; ERROR: 準備された文"show_now"はすでに存在します sakura=# すでに登録されているクエリー名を使用した場合は、ERRORとなります。 * PREPAREで登録したクエリー名を削除する [#s6c42229] 登録されているクエリー定義を削除する構文は以下の通りです。 DEALLOCATE クエリー名 実際に操作して実行した結果は以下の通りです。 + PREPAREで1回目の定義 sakura=# prepare show_now as select now(); PREPARE + PREPAREで2回目の定義(すでに存在するためERRORになる) sakura=# prepare show_now as select current_timestamp; ERROR: 準備された文"show_now"はすでに存在します + DEALLOCATE クエリー名を実行し削除 sakura=# deallocate show_now; DEALLOCATE + 再度PREPAREで定義 sakura=# prepare show_now as select current_timestamp; PREPARE + PREPAREで定義したクエリーを実行 sakura=# execute show_now; now ------------------------------- 2013-01-23 23:32:44.238205+09 (1 行) #htmlinsertpcsp(db-btm.html,db-sp.html)
タイムスタンプを変更しない
#navi(../) * PostgreSQLでPREPAREしたクエリーを削除する方法・DEALLOCATE [#a576421d] DEALLOCATEを使うとことにより、PREPAREで定義したクエリーを削除することができます。~ 以下に使用例を記します。 #contents #htmlinsertpcsp(db-top.html,db-sp.html) * 関連記事 [#b6e94297] -[[MySQLのPREPAREでPreparedStatementsを作成する方法>MySQL/PREPAREでPreparedStatementsを作成する]] -[[PostgreSQLのPREPAREでPreparedStatementsを作成する方法>PostgreSQL/PREPAREでPreparedStatementsを作成する]] -[[MySQLでPREPAREしたクエリーを削除する方法・DEALLOCATE>MySQL/PREPAREしたクエリーを削除する方法・DEALLOCATE]] * 動作確認環境 [#a5ad0980] - OS~ CentOS6 x86_64 - PostgreSQL~ PostgreSQL 8.4.13 * PREPAREで同じクエリー名を2回定義してみる [#of12a3b6] + psqlコマンドでsakuraデータベースに接続 -bash-4.1$ psql sakura psql (8.4.13) "help" でヘルプを表示します. + prepareでshow_nowを定義 sakura=# prepare show_now as select now(); PREPARE + 定義したshow_nowを実行 sakura=# execute show_now; now ------------------------------- 2013-01-23 23:26:57.612195+09 (1 行) + show_nowを再度prepareで定義するとERRORになる。 sakura=# prepare show_now as select current_timestamp; ERROR: 準備された文"show_now"はすでに存在します sakura=# すでに登録されているクエリー名を使用した場合は、ERRORとなります。 * PREPAREで登録したクエリー名を削除する [#s6c42229] 登録されているクエリー定義を削除する構文は以下の通りです。 DEALLOCATE クエリー名 実際に操作して実行した結果は以下の通りです。 + PREPAREで1回目の定義 sakura=# prepare show_now as select now(); PREPARE + PREPAREで2回目の定義(すでに存在するためERRORになる) sakura=# prepare show_now as select current_timestamp; ERROR: 準備された文"show_now"はすでに存在します + DEALLOCATE クエリー名を実行し削除 sakura=# deallocate show_now; DEALLOCATE + 再度PREPAREで定義 sakura=# prepare show_now as select current_timestamp; PREPARE + PREPAREで定義したクエリーを実行 sakura=# execute show_now; now ------------------------------- 2013-01-23 23:32:44.238205+09 (1 行) #htmlinsertpcsp(db-btm.html,db-sp.html)
テキスト整形のルールを表示する