Skip to content

pgsql-jp/PgBash

Repository files navigation

PgBash

境田雅明様からPgBash( http://db.psn.ne.jp/pgbash/ )を引き継ぎ、github( https://github.com/pgsql-jp/PgBash )にリポジトリを作成しました。 (2017-12-21 kuwamura)

[元の索引] [ダウンロード] [インストール] [使用例] [FAQ]

PgBash

PgBashは、bashシェルの中に PostgreSQL用のデータベースアクセス機能を組み込んだシェルです。 シェルスクリプトを作成してバッチ処理で SQLを実行したり、 端末から対話的に SQLを直接実行することができます。 また、簡易的なWebアプリケーションを作成することができます。


(PgBash最新バージョン)
pgbash-8r3.2 ... bash-3.2.48ベース
pgbash-8r4.1 ... bash-4.1.10ベース
(環境設定ファイル)
pgbashrc-9.0 ... PostgreSQL-9.0用


PgBashの概要

データベース・インターフェイス

PgBashは、bashシェルの中に PostgreSQL用の直接SQL/埋込SQLインターフェイスを組み込んでいます。 ここで、「直接SQL」とは、SQLを入力すると即座に実行してその結果を標準出力に出力する機能を表します。また、「埋込SQL」とは、検索結果をシェル変数に代入し、シェルスクリプト言語で処理する機能を表します。PgBashでは、SELECT_INTO文 もしくは FTECH_INTO文を「埋込SQL」として使用することができます。

対話型でSQLを実行

PgBashを、ログインシェルもしくはサブシェル(親のシェルから起動された子のシェル)として起動し、コマンドラインにSQL文を入力して即座に実行することができます。また、SQL文とパイプライン/リダイレクション、バックグランドジョブ命令などを組み合わて実行することもできます。

シェルスクリプトを作成可能

PgBashは、bashシェルが持っているシェルスクリプト機能を使用して、シェルスクリプトを作成することができます。bashシェルのIF/WHILEなどの制御文、SQL文や埋込SQL文を使用してシェルスクリプトを作成します。

Webアプリケーションを作成可能

PgBashは、Webアプリケーション(CGI プログラム)として使用するために、GET/POSTメソッドのデータをシェル変数に自動的にセットする機能を備えています。

実行環境

PgBashは、Unix環境もしくは WindowsのCygwin環境で実行可能です。PgBashは、psql とほぼ同等の機能があり実行環境も psqlと同様になります。

対話型環境設定ファイル

PgBashの対話型環境では、bashシェルと同様に .bash_profile(ログインシェル用)、.bashrc(サブシェル用)環境設定ファイルなどが必要になります。

また、データベース環境設定ファイルとして pgbashrc が必要です。pgbashrcは、対話環境で操作する上で便利なコマンドや、データベース情報を表示するための各種コマンドが設定されています。

pgbashrc は、まず ~/.pgbashrc を読み、存在していなければ /etc/pgbashrc を読みます。PgBashを起動中は、source コマンドによって再読み込みすることができます。

PgBashの特徴

対話型環境における機能

  1. PgBashは、psql と同等のデータベースアクセス機能が有ります。
  2. PgBashは、pgbashrc を使用してユーザ独自の対話型環境を簡単に設定できます。
  3. PgBashは、bashの標準機能である alias、function、操作履歴の利用などの柔軟な対話型の操作環境を提供することができます。
  4. PgBashは、SQLとパイプライン、リダイレクション、バックグランドジョブとを組み合わせて実行することができます。

PgBash独自のSQL拡張機能

  1. PgBashは、CONNECT, DISCONNECT, SET CONNECTIONを用いて、複数のデータベースにアクセスすることができます。
  2. PgBashは、「SELECT INTO :ホスト変数」文や「FETCH INTO :ホスト変数」文によって検索結果をシェル変数に代入する機能があります。
  3. PgBashは、SQL実行後のエラーコード、SELECTの結果のタプル数、列数、列名などをシェル変数に保管します。

Webアプリケーションとしての機能

  1. PgBashは、SQL出力をHTMLに切り替え、GET/POSTメソッドによるデータの読込、HTTP_COOKIE の値の読込などを自動的に行う機能があります。
  2. PgBashは、SELECTの結果を自動的にHTMLのTABLE形式で出力できます。その際に、TABLE タグ、ヘッダー部の TRタグ、THタグ、ボディ部の TDタグを変更することができます。

開発履歴

その他の情報

  • 技術評論社殿のご厚意により、Software Design 2000年6月号のPgBashの記事をPDFファイルで公開できることになりました。但し、印刷配布およびCD-ROMなどのメディアへの転載は禁止です。

JPUG GitHub Last Modified at 2019/04/05

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published