------------------------------------------------------------------------------ HSPDB ver2.61 REFERENCE MANUAL HSP : Hot Soup Processor HSP拡張DLLリファレンス copyright 2004 (c) onion software ------------------------------------------------------------------------------ ・はじめに このDLLは、Hot Soup Processor ver2.6以降とともに使用することで、Windowsの ODBCを経由して各種データベースへのアクセスを可能にするためのプラグインです。 この拡張DLLを使用することにより、新規命令が追加されます。 HSPDBを使用することにより、Oracle、MS-SQL Server、dBase、Paradoxなど 対応するODBCドライバを持つデータベースにアクセスして、SQLによるコントロール が可能になります。HSPDBを使用するためには、WindowsにODBCおよび対応ドライバ がインストールされている必要があります。 ・インストール 拡張プラグインのファイル、HSPDB.DLLは、HSED2.EXEおよび、HSP2.EXEのある ディレクトリと同じ場所に置いてください。 (実行に使われているHSP2.EXEと同じディレクトリに、HSPDB.DLLがない場合は エラーになります) また、HSPDB.ASをスクリプトと同じディレクトリか、またはcommonフォルダ内に コピーしてください。 HSPDBを使用する場合は、スクリプトの先頭に必ず「#include "hspdb.as"」という 行を追加してください。以上で、HSPの機能が拡張され、このリファレンスで説明を している命令を使用することができるようになります。 まず最初に、試しに付属のサンプルスクリプト(test??.as)を実行してみてください。 拡張された機能の簡単な使用例を見ることができるはずです。 ・更新履歴 2003/9/1 ver1.1 終端コード(0)が正しく取得されないことがある不具合を修正。 2003/3/7 ver1.0 最初のバージョン。 動作テストは、MySQL+MyODBCの環境で行なっています。 ・注意点 HSPDB.DLLは、HSP2.EXEと同時に使用されるプラグインファイルです。 使用するHSPは、ver2.6以上をお使い下さい。ver2.55やそれ以前のHSPには 対応していませんのでご注意下さい。 EXEファイルを作成した場合でも、HSPDB.DLLをEXEファイルと同じディレクトリ に置かないと動作しません。また、packfileにDLLを追加することはできません。 ・著作権および連絡先 著作権および、使用の規定についてはHot Soup Processor ver2.6と同様です。 営利・非営利を問わずHSPDB.DLLを自由に配布してかまいません。 onion softwareは本プログラムによって生じた、いかなる損害についても 保証いたしません。自己の責任の範囲で使用してください。 HSPDB.DLLは、Microsoft Visual C++ 7.1でコンパイルされて います。 ・命令一覧 dbini ODBCの初期化を行なう dbbye HSPDBの終了処理を行なう dbopen "...",mode DBに接続を行なう dbclose DBの接続を切断する dbstat 現在の状態を得る dbspchr p1 区切り文字を指定する dbsend "..." SQL文字列を送信する dbgets p1 結果文字列を取得する ・ODBC命令 ODBCを経由して各種データベースにアクセスするための命令セットです。 dbini ODBCの初期化を行なう ODBCの初期化を行ないます。 最初に1回だけ必ず実行する必要があります。 実行後に結果がシステム変数statに格納されます。 0ならば正常終了、それ以外はエラーが発生したことを示しています。 dbbye HSPDBの終了処理を行なう HSPDB全体の終了処理を行ないます。 通常、この命令はプログラム終了時に自動的に呼び出されるため、 特にスクリプトに記述する必要はありません。 dbopen "...",mode DBに接続を行なう "..." = 接続指定文字列 mode = 接続モード(0〜1,デフォルト=0) 接続指定文字列で指定されたDBに接続を開始します。 接続指定文字列は、「DSN=TEST」のようなDSN名を指定することができる他、 ドライバやファイルなど各種パラメーターを文字列で記述することが可能です。 接続指定文字列についての詳細は、ODBC関連の資料を参考にしてください。 接続モードが1の場合は接続確認のためのダイアログがポップアップします。 接続モードが0の場合は、指定した文字列のまま接続を行ないます。 実行後に結果がシステム変数statに格納されます。 0ならば正常終了、それ以外はエラーが発生したことを示しています。 dbclose DBの接続を切断する dbopen命令によって接続されたDBを切断します。 dbstat 現在の状態を得る 現在の接続状態などをシステム変数statに代入します。 stat | 状態 ------------------------------------------------------ 1 エラーが発生 2 切断中 3 接続中 4 SQL応答待ち dbspchr p1 区切り文字を指定する p1 = 0〜255(文字コード) dbgets命令で取得される結果の項目を区切るための文字を設定します。 通常は「,」で項目が区切られますが、別な文字にしたい場合に設定を 行なって下さい。たとえば、「dbspchr 9」を指定した場合はTABコードが 区切り文字になります。 dbsend "..." SQL文字列を送信する "..." = SQL文字列 接続したDBにSQLの文法によるコントロール文字列を送信します。 実行後に結果がシステム変数statに格納されます。 0ならば正常終了、それ以外はエラーが発生したことを示しています。 正常終了した場合は、dbgets命令で結果を取得することができます。 dbgets p1 結果文字列を取得する p1 = 結果の文字列が代入される変数名 dbsend命令により送信されたSQL文字列に対する結果を取得します。 p1に、結果文字列が代入される変数名を指定する必要があります。 p1で指定された変数は強制的に文字列型になり、変数バッファのサイズが 許す限りデータを受け取ります(バッファがオーバーフローすることはありません)。 実行後に結果がシステム変数statに格納されます。 0ならば正常にデータを受け取ったことを示しています。 1の場合は、結果の取得中にエラーが発生したことを示しています。 2の場合は、これ以上受け取るべきデータがないことを示しています。 データを取得する場合は、大きなデータを何度にも分けて取得する 可能性もあるため、システム変数statの内容が0だった場合は、 再度dbgetsを実行して最後までデータを受け取るまでループさせるように してください。 ------------------------------------------------------------------------------- HSP users manual / end of file -------------------------------------------------------------------------------