★PostgreSQLカンファレンス2024 12月6日開催/チケット販売中★
他のバージョンの文書 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9.6 | 9.5 | 9.4 | 9.3 | 9.2 | 9.1 | 9.0 | 8.4 | 8.3 | 8.2 | 8.1 | 8.0 | 7.4 | 7.3 | 7.2

createlang

名前

createlang -- PostgreSQL手続き言語をインストールする

概要

createlang [connection-option...] langname [dbname]

createlang [connection-option...] --list | -l [dbname]

説明

createlangは、PostgreSQLデータベースに手続き言語を追加するためのユーティリティです。

createlangは単なるCREATE LANGUAGE SQLコマンドのラッパです。

注意

createlangは廃止予定であり、将来のPostgreSQLリリースで削除される可能性があります。 代わりにCREATE EXTENSIONコマンドを直接使用することを推奨します。

オプション

createlangでは、下記のコマンドライン引数を指定できます。

langname

インストールする手続きプログラミング言語の名前を指定します。 (この名前は小文字です。)

[-d] dbname
[--dbname=]dbname

言語を追加するデータベースを指定します。 デフォルトでは、現在のシステムユーザ名と同じ名前のデータベースが使用されます。

-e
--echo

実行されるSQLコマンドを表示します。

-l
--list

対象データベース内に既にインストールされている言語の一覧を表示します。

-V
--version

createlangのバージョンを表示し、終了します。

-?
--help

createlangのコマンドライン引数の使用方法を表示し、終了します。

createlangは、以下のコマンドライン引数も接続パラメータとして受け付けます。

-h host
--host=host

サーバが稼働しているマシンのホスト名を指定します。 この値がスラッシュから始まる場合、Unixドメインソケット用のディレクトリとして使用されます。

-p port
--port=port

サーバが接続を監視するTCPポートもしくはUnixドメインソケットファイルの拡張子を指定します。

-U username
--username=username

接続するためのユーザ名を指定します。

-w
--no-password

パスワードの入力を促しません。 サーバがパスワード認証を必要とし、かつ、.pgpassファイルなどの他の方法が利用できない場合、接続試行は失敗します。 バッチジョブやパスワードを入力するユーザが存在しない場合にこのオプションは有用かもしれません。。

-W
--password

データベースに接続する前に、createlangは強制的にパスワード入力を促します。

サーバがパスワード認証を要求する場合createlangは自動的にパスワード入力を促しますので、これが重要になることはありません。 しかし、createlangは、サーバにパスワードが必要かどうかを判断するための接続試行を無駄に行います。 こうした余計な接続試行を防ぐために-Wの入力が有意となる場合もあります。

環境

PGDATABASE
PGHOST
PGPORT
PGUSER

デフォルトの接続パラメータです。

また、このユーティリティは、他のほとんどのPostgreSQLユーティリティと同様、libpqでサポートされる環境変数を使用します(項31.14を参照してください)。

診断

ほとんどのエラーメッセージは、読めば理解できるものとなっています。 エラーメッセージを見ても問題が解決しない場合は、createlang--echoオプションを付けて実行してください。表示結果の詳細については、それぞれ対応するSQLコマンドを参照してください。 libpqフロントエンドライブラリで使用されるデフォルトの接続設定と環境変数も適用されます。

注釈

言語を削除するには droplangを使用してください。

pltcl言語をtemplate1データベースにインストールします。

$ createlang pltcl template1

言語をtemplate1にインストールすることにより、後で作成されるデータベースにも自動的にインストールされることに注意してください。

関連項目

droplang, CREATE EXTENSION, CREATE LANGUAGE