• 検索結果がありません。

第3章  Perl DBI・DBD::Symfowareの使 用

3.2  dbishの実行

3.2  dbishの実行 

  dbishの実行について説明します。 

dbishの実行 

1.  dbishからアクセスするデータベースを作成してください。データベー スの作成方法の詳細は、 RDB管理者ガイド と RDBユーザーズガイド  データベース定義編 を参照してください。 

2.  ローカルのSymfoware/RDBに接続する場合、環境変数RDBNAMEにRDBシス テム名を指定してください。省略した場合、RDB名なしのRDBシステムに 接続します。環境変数RDBNAMEの詳細は、 RDBユーザーズガイド 応用プ ログラム開発編 の マルチRDB運用のコネクション を参照してくだ さい。 

3.  リモートのSymfoware/RDBに接続する場合、Symfoware Serverのリモー トアクセスの設定とRDBシステムの再起動を行う必要があります。リモ ートアクセスの設定の詳細は、 スタートガイド サーバ編 の RDBの セットアップ および システム用の動作環境ファイルによる定義 の

MAX̲CONNECT̲TCP を参照してください、。 

4.  環境変数DBI̲DSNにデータソース名を指定してください。データソース 名の詳細は、 4.3.1 connect の パラメタ を参照してください。環 境変数DBI̲DSNを省略した場合、dbishがデータソース名を問い合わせま す。 

5.  環境変数DBI̲USERに認可識別子を指定してください。環境変数DBI̲USER を省略した場合、dbishを実行するユーザの認可識別子が採用されます。 

6.  環境変数DBI̲PASSにパスワードを指定してください。環境変数DBI̲USER を省略した場合はdbishを実行するユーザのパスワードが採用されます。

環境変数DBI̲USERを指定した場合はdbishがパスワードを問い合わせま す。 

7.  必要に応じて、環境変数DBI̲TRACEを指定してください。環境変数 DBI̲TRACEの詳細は、 4.3.5 trace を参照してください。 

8.  以下のコマンドでdbishを実行します。環境変数DBI̲DSN、DBI̲USER、

DBI̲PASSの指定よりもコマンドで指定するデータソース名、認可識別子、

パスワードのほうが優先されます。 

dbish [ データソース名 [ 認可識別子 [ パスワード ] ] ] 

9.  dbishがデータソース名を問い合わせてきた場合、データソース名を指 定してください。データソース名の詳細は、 4.3.1 connect の パラ メタ を参照してください。 

10. dbishがパスワードを問い合わせてきた場合、パスワードを指定してく ださい。 

11. 以下のコマンドでSQL文を実行します。 

dbi:Symfoware:RDBDB> SQL文を指定する。 

dbi:Symfoware:RDBDB> /go 

(実行結果が表示されます。) 

12. 以下のコマンドでdbishの使用方法を調べてください。 

dbi:Symfoware:RDBDB> /help 

13. 以下のコマンドでdbishを終了します。 

dbi:Symfoware:RDBDB> /quit   

dbishの実行例 

  dbishの実行例を以下に示します。 

# dbish 

DBI::Shell xx.xx using DBI x.xx   

WARNING: The DBI::Shell interface and functionality are 

=======  very likely to change in subsequent versions! 

     

Available DBI drivers: 

 1: dbi:ExampleP   2: dbi:Proxy   3: dbi:Symfoware 

Enter driver name or number, or full 'dbi:...:...' DSN: dbi:Symfoware:RDBDB   

Connecting to 'dbi:Symfoware:RDBDB' as ''... 

@dbi:Symfoware:RDBDB> select * from stocks.stock 

Current statement buffer (enter '/' to execute or '/help' for help): 

select * from stocks.stock   

@dbi:Symfoware:RDBDB> /go 

PRODUCT̲NUMBER,PRODUCT̲NAME,STOCK̲QUANTITY,WAREHOUSE̲NUMBER  '140','cassette deck       ','120','2' 

'110','television      ','85','2'  [2 rows of 4 fields returned] 

@dbi:Symfoware:RDBDB> /format box 

@dbi:Symfoware:RDBDB> select * from stocks.stock 

Current statement buffer (enter '/' to execute or '/help' for help): 

select * from stocks.stock   

@dbi:Symfoware:RDBDB> /go 

+‑‑‑‑‑‑‑‑‑‑‑‑‑‑+‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑+‑‑‑‑‑‑‑‑‑‑‑‑‑‑+‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑+ 

│PRODUCT̲NUMBER│PRODUCT̲NAME        │STOCK̲QUANTITY│WAREHOUSE̲NUMBER│ 

+‑‑‑‑‑‑‑‑‑‑‑‑‑‑+‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑+‑‑‑‑‑‑‑‑‑‑‑‑‑‑+‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑+ 

│       140│cassette deck       │       120│       2│ 

+‑‑‑‑‑‑‑‑‑‑‑‑‑‑+‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑+‑‑‑‑‑‑‑‑‑‑‑‑‑‑+‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑+ 

│       110│television      │      85│       2│ 

+‑‑‑‑‑‑‑‑‑‑‑‑‑‑+‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑+‑‑‑‑‑‑‑‑‑‑‑‑‑‑+‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑‑+ 

[2 rows of 4 fields returned] 

@dbi:Symfoware:RDBDB> /quit 

Disconnecting from dbi:Symfoware:RDBDB. 

#     

dbishの注意事項 

  dbishにはPerlスクリプト中の文字にEUC(Extended UNIX Code)、シフトJIS

3.2 dbishの実行 

コードが含まれているときの考慮が足りません。マルチバイト文字列の詳細は、

6.3 マルチバイト文字列の注意 を参照してください。