コマンドラインから対話形式でSQLを実行します。詳細は、-helpfull
オプションを使用してください。
UNIXでは、このユーティリティはTimesTen Data Manager DSNで使用できます。
ttIsql [-h | -help | -? | -helpcmds | -helpfull]
ttIsql [-V | -version]
ttIsql [-f inputFile] [-v verbosity]
[-e commands] [-interactive] [-N ncharEncoding] [-wait]
{-connStr connection_string | DSN}
ttIsql set attribute [value]
ttIsql show {all | attribute}
ttIsqlには次のオプションがあります。
ttIsqlの「属性の設定および表示」のリストも参照してください。
コマンドの後にはセミコロン(;)が必要です。ブール・コマンドでは、1および0のかわりに、ONおよびOFFを使用する場合があります。
ttIsqlには次のコマンドがあります。
コマンド | 説明 |
bye exit | ttIsqlを終了します。 |
cachegroups [[cache_group_owner_pattern.] cache_group_name_pattern] | 現在接続中のデータソースに定義されている、キャッシュ・グループに関する情報をレポートします。オプションの引数を指定しない場合は、現在のデータソースのすべてのキャッシュ・グループに関する情報がレポートされます。 |
cachesqlget [ASYNCHRONOUS_WRITETHROUGH | INCREMENTAL_AUTOREFRESH] [[cache_group_owner.] | 増分AUTOREFRESHまたはASYNCHRONOUS WRITETHROUGH機能を使用してキャッシュ・グループに関連付けられたOracleオブジェクトをインストールまたは削除する、Oracle SQL*Plus互換のスクリプトを生成します。INSTALLを指定した場合、OracleオブジェクトをインストールするOracle SQL文が生成されます。UNINSTALLを指定した場合、Oracleオブジェクトを削除するOracle SQL文が生成されます。UNINSTALLでキャッシュ・グループを指定しない場合、AUTOREFRESHユーザーのアカウントのすべてのOracleオブジェクトを削除するSQL文が生成されます。オプションのfilename引数が含まれている場合、生成されたSQL文は指定した外部ファイルに保存されます。既存の外部ファイルがある場合は、ファイルへの書込みが行われる前に、ファイルの内容が破棄されます。 |
clearhistory | 履歴バッファを消去します。「history」および「savehistory」も参照してください。 |
clienttimeout [timeeout seconds] | 現在の接続に対して、クライアントのタイムアウト値を秒単位で設定します。 |
close [connect_id.]command_id] closeall | 接続名(connect_id)およびコマンドID(command_id)で指定されている準備されたコマンドを閉じます。command_idが指定されていない場合は、最新のコマンドが閉じられます。 closeall を選択した場合は、現在開いている準備されたコマンドがすべて閉じられます。 |
commit | 現在のトランザクションを(接続のDurableCommitsが1の場合は永続的に)コミットします。 |
commitdurable | 現在のトランザクションを永続的にコミットします。 |
compact | データ・ストアを縮小します。 |
connect | 指定したODBC connection_stringでデータ・ストアに接続します。この書式でパスワードを指定しない場合は、ttIsqlによってパスワードの入力が要求されます。 ユーザーを指定しない場合、ttIsqlによって、オペレーティング・システムに指定された現在のユーザーのユーザー名を使用して接続が試行されます。 as connidを指定した場合は、接続に明示的に名前を付けることができます。connidに使用できるのは英字で始まる最大30文字の英数字のみで、大/小文字を区別する必要があります。connidの名前は、ConnectionName一般接続属性に自動的に指定されます。 接続が失敗した場合、現在の接続は、いずれにも接続されないnoneという名前の特別な予約済接続に設定されます。 |
describe [[owner_name_pattern.] | 表名パターン、プロシージャ名パターン、準備されたSQL文または準備されていないSQL文に関連付けられた列定義をレポートします。
表およびキャッシュ・グループの場合、エージング・ポリシー(存在する場合)とCASCADE DELETE属性を表示します。 列名の場合、すべての可変長列のINLINEプロパティを表示します。 *を指定した場合は、すべての接続の準備された文がレポートされます。 |
disconnect [all] | データ・ストアから切断します。 all が指定されている場合は、すべての接続を切断して閉じます。切断が終了すると、現在の接続は「none」という名前の予約済接続に設定されます。 |
dssize [k|m] | データ・ストア・サイズの情報をKBまたはMBの単位で出力します。デフォルトはKBです。 |
e: msg | 行末で終了される、指定したメッセージをエコーします。行を終了させるセミコロンは必須ではありません。冗長レベルが0(ゼロ)に設定されている場合、メッセージはエコーされません。 |
exec [connect_id.]command_id] | 接続connect_idに対して準備されたコマンドcommand_idを実行します。command_idを指定しない場合は、最新のコマンドが実行されます。 |
execandfetch [connect_id.]command_id] | 接続connect_idに対して準備されたコマンドcommand_idを実行し、すべての結果をフェッチします。command_idを指定しない場合は、最新のコマンドが実行され、すべての結果がフェッチされます。 |
explain sqlstmt | 指定したSQL文の計画について説明します。 |
fetchall [connect_id.]command_id] | 接続connect_idに対して準備されたコマンドcommand_idからすべての結果をフェッチします。command_idを指定しない場合は、最新のコマンドからの結果がすべてフェッチされます。コマンドは exec を使用して、すでに実行されている必要があります。 |
fetchone [connect_id.]command_id] | 接続connect_idに対して準備されたコマンドcommand_idから1つの結果をフェッチします。command_idを指定しない場合は、最新のコマンドから1つの結果がフェッチされます。コマンドは exec を使用して、すでに実行されている必要があります。 |
free [connect_id.]command_id] | 接続connect_idに対して準備されたコマンドcommand_idを解放します。コマンドを指定しない場合は、最新のコマンドが解放されます。 |
help [command | コマンドの簡単なヘルプ情報または詳細なヘルプ情報を出力します。引数として特定のコマンドを指定した場合は、各コマンドの詳細なヘルプが出力されます。コマンドの正確な名前がわからない場合は、コマンド名の一部の可能性がある数文字のみを入力します。ttIsqlでは、それらの文字を含むすべてのコマンドのヘルプが検索され、表示されます。引数としてallを指定した場合は、すべてのコマンドの詳細なヘルプが出力されます。引数としてcommentsを指定した場合は、スクリプト内でのttIsqlコメントの使用に関する情報が出力されます。引数を指定しない場合は、すべてのコマンドの簡単なヘルプ情報が出力されます。 |
history [-r] [num_commands] | 以前に実行されたコマンドを表示します。num_commandsパラメータは、表示するコマンド数を指定します。このパラメータを省略した場合、実行された過去10コマンドがデフォルトで表示されます。 -r パラメータを指定した場合、コマンドは逆の順序で表示されます。履歴リストには、実行された過去100コマンドが格納されています。履歴を消去するには、clearhistoryコマンドを使用します。「savehistory」も参照してください。 |
host os_command | オペレーティング・システムのコマンドを実行します。コマンドはttIsqlと同じコンソールで実行されます。このコマンドは、作成されるプロセスの環境の環境変数TT_CONNSTRを設定します。変数の値は、現在の接続の接続文字列です。 |
indexes | 指定した表の索引、または指定されたパターンに一致するすべての表の索引を表示します。 |
monitor | 参照を容易にするためにMONITOR表の内容を書式化します。 |
prepare [[connid.]command_id] | 指定したSQL文を準備します。command_id引数を指定しない場合は、command_idが自動的に割り当てられます。command_id引数には0から255までの値を指定できます。connidを指定した場合、指定した接続IDに切り替えられます。connidには、英数字のみを使用することができ、大/小文字は区別されません。 |
procedures [procedure_name_ | 指定されたパターンと一致する組込みプロシージャ名をレポートします。オプションの引数を省略した場合は、TimesTenによって、データソースのすべてのプロシージャがレポートされます。 |
quit | ttIsqlを終了します。 |
repschemes | 現在接続しているデータソースに定義されたレプリケーション・スキームの情報をレポートします。この情報には、レプリケーション・スキームに関連付けられたすべての要素の属性が含まれます。オプションの引数を省略した場合は、現在のデータソースに定義されたすべてのレプリケーション・スキームの情報がレポートされます。 |
retryconnect [0|1] | 接続再試行機能を無効(0)または有効(1)にします。接続再試行機能を有効にすると、最初は一時的な状況のために失敗した、データソースへの接続の試行は成功するまで繰り返されます。たとえば、接続の試行時に、データソース・リカバリが進行している場合は、接続再試行機能によって接続コマンドはリカバリ・プロセスが完了するまで接続を試行し続けます。オプションの引数を省略した場合は、デフォルトによって接続再試行機能は有効にされます。 |
rollback | 現在のトランザクションをロールバックします。AutoCommitは無効にする必要があります。 このコマンドによって、Oracle上でのキャッシュ接続操作が停止されることはありません。このような操作には、PassThrough文、フラッシング、手動ロード、手動リフレッシュ、同期WRITETHROUGH、伝播および透過的ロードが含まれます。
|
run filename | filenameからSQLコマンドを読み取って実行します。このコマンドは、最大5レベルまでネストできます。 |
savehistory [-a | -f] outputfile |
指定した出力ファイルに履歴バッファを書き込みます。 出力ファイルに保存されるのはコマンドのみで、パラメータ値は保存されません。このため、スクリプトを使用して出力ファイルから履歴を再生することはできません。 出力ファイルがすでに存在する場合、 「clearhistory」および「history」も参照してください。 |
sequences [[owner_name_pattern.] | パターンに一致する順序の属性をレポートします。オプションの引数を省略した場合は、TimesTenによってデータソースのすべての順序がレポートされます。 |
set attribute [value] | 指定した属性を指定した値に設定します。
値を指定しない場合は、指定した属性の現在の値が表示されます。 指定できる属性の説明は、「属性の設定および表示」を参照してください。 |
setjoinorder tblNames [...] | オプティマイザに対して結合順序を指定します。AutoCommitは無効にする必要があります。 |
| 問合せオプティマイザの索引ヒントを設定します。 |
show {all |attribute} | 指定したデータ・ストア属性の値、またはすべての属性を表示します。
指定できる属性の説明は、「属性の設定および表示」を参照してください。 |
sleep [n] | 実行をn秒間一時停止します。nを指定しない場合、実行は1秒間一時停止されます。 |
sqlcolumns | SQLColumnsへのODBCコールの結果を出力します。 |
sqlgetinfo infotype | SQLGetInfoへのODBCコールの結果を出力します。 |
| SQLStatisticsへのODBCコールの結果を出力します。 sqlstatistics では表名パターンを使用できません。 |
sqltables | SQLTablesへのコールの結果を出力します。パターンは、任意の1文字を表すアンダースコア(_)、または0(ゼロ)文字以上の文字列を表すパーセント記号(%)を含む文字列です。 |
statsclear | 指定した表(または表を指定しない場合はすべての表)の統計を消去します。 |
statsestimate | 指定した表(または表を指定しない場合はすべての表)の統計を見積もります。 |
statsupdate [[owner_name.] | 指定した表(または表を指定しない場合はすべての表)の統計を更新します。 |
tables | 表、マテリアライズド・ビューおよびビューの完全修飾された名前をリストします。オプションの引数を省略した場合は、データ・ストア内の表、マテリアライズド・ビューおよびビューの完全修飾された名前がすべて、ttIsqlによって表示されます。 |
unsetjoinorder | オプティマイザへの結合順序アドバイスを消去します。AutoCommitは無効にする必要があります。 |
unsetuseindex | 問合せオプティマイザの索引ヒントを消去します。 |
use [conn_id] | 現在の接続とそのIDのリストを表示します。connidを指定した場合は、指定された接続IDに切り替えられます。 use が接続IDの特定に失敗した場合、現在の接続はnoneという名前の予約済接続に設定されます(「connect」を参照)。 |
version | バージョン情報をレポートします。 |
views [[owner_name_pattern.] | データ・ストアに定義されたすべてのビューおよびマテリアライズド・ビューの情報を取得します。 |
xladeletebookmark id | 永続XLAブックマークを削除します。削除するブックマークを指定しない場合は、現在のすべてのXLAブックマークの状態がレポートされます。『Oracle TimesTen In-Memory Database C開発者およびリファレンス・ガイド』のXLAリファレンスに関する説明を参照してください。 ADMIN権限またはオブジェクトの所有権が必要です。 |
ttIsqlの「コマンド」のリストも参照してください。一部のコマンドは、setコマンドの属性として使用されます。その場合は、setコマンドとともに、またはsetコマンドなしで使用することができます。
ブール・コマンドでは、1および0のかわりに、ONおよびOFFを使用する場合があります。
すべてのコマンドの後にはセミコロン(;)が必要です。
ttIsql setは次の属性をサポートします。
コメント・マーカーのタイプは、次のとおりです。
# [
comment_text]
-- [
comment_text]
/* [
comment_text] */ti
コメントは複数の行にまたがることができません。行の処理中にコメント・マーカーが検出されると、行の残りは無視されます。
行の始めの「--
」はSQLコメントとみなされます。その行はコメントとみなされ、行のいずれの部分もSQL文の処理に含まれません。「--+
」で始まる行は、SQL文のセグメントとして解釈されます。
コメント・マーカーは行の途中で使用できます。
例:
monitor
; /*this is a comment after a ttIsql command*/
ttIsqlはcshに類似したコマンド履歴を実現します。
コマンドの使用法: history [-r] [
num_commands]
説明: 以前に実行されたコマンドを表示します。num_commandsパラメータは、表示するコマンド数を指定します。-r
パラメータを指定した場合、コマンドは逆の順序で表示されます。
コマンドの使用法: ! [
command_id |
command_string | !]
説明: 履歴リスト内のコマンドを実行します。command_id引数を指定した場合は、このIDと関連付けられた履歴リストのコマンドが再実行されます。command_string引数を指定した場合は、command_stringで始まる履歴リスト内の最新のコマンドが再実行されます。!
引数を指定した場合は、実行された最新のコマンドが再実行されます。
例: "!!;
"または"!10;
"または"!con;
"
clearhistory、history、savehistoryコマンドも参照してください。
ttIsqlでは、デフォルトでコマンド入力時のキーストロークのショートカットがサポートされています。この機能を無効にするには、次のように入力します。
Command> set editline=0;
使用できるバインディングは、次のとおりです。
動的パラメータによって、個別の行で各パラメータへの入力が求められます。パラメータの値は、SQLで1つのリテラルを指定するのと同じ方法で指定します。
SQL_TIMESTAMP列は、動的パラメータを使用して追加できます(たとえば、「1998-09-08 12:1212」のような値)。
パラメータ値はセミコロン文字で終了する必要があります。
指定可能な値の種類は次のとおりです。
環境変数TTISQL
をエクスポートすることによって、デフォルトのコマンドライン・オプションを設定できます。TTISQL
環境変数の値は、TTISQL
コマンドラインと同じ構文要件を備えた文字列です。TTISQL
環境変数とコマンドラインに同じオプションが存在している場合は、コマンドラインに指定されているオプションが常に優先されます。
ttIsql.inp
からコマンドを実行します。
すべての出力を有効にします。DSN RunDataに接続し、データ・ストアが存在していない場合は作成します。
対話形式のコマンドで出力します。
ヘルプ・テキスト全体を出力します。
すべてのttIsql属性の設定を表示します。
Command> show all;
Connection independent attribute values:
columnlabels = 0 (OFF)
editline = 1 (ON)
multipleconnections = 0 (OFF)
ncharencoding = LOCALE
prompt = 'Command> '
verbosity = 2
vertical = 0 (OFF)
Connection specific attribute values:
autocommit = 1 (ON)
Connection String =
DSN=DS70;UID=joeuser;DataStore=/DS/ DS70;DatabaseCharacterSet=AL32UTF8;ConnectionCharacterSet=AL32UTF 8;DRIVER=/opt/TimesTen/tt70/lib/ libtten.so;Authenticate=0;PermSize=20;TempSize=20;TypeMode=1;
isolation = READ_COMMITTED
Prefetch count = 5
Query timeout = 0 seconds (no timeout)
Current Optimizer Settings:
Scan: 1
Hash: 1
Ttree: 1
TmpHash: 1
TmpTtree: 1
TmpTable: 1
NestedLoop: 1
MergeJoin: 1
GenPlan: 0
TblLock: 1
RowLock: 1
Rowid: 1
FirstRow: 0
IndexedOr: 1
PassThrough: 0
BranchAndBound: 1
ForceCompile: 0
CrViewSemCheck: 1
ShowJoinOrder: 0
CrViewSemCheck: 1
TransparentLoad: 0
UseBoyerMooreStringSearch: 0
Current Join Order:
SQLを準備して実行します。
ttIsql -connStr "DSN=RunData"
ttIsql (c) 1996-2000, TimesTen, Inc. All rights reserved.
Type ? or "help" for help, type "exit" to quit ttIsql. All commands must end with a semi-colon. (Default setting AutoCommit=1) Command> prepare 1 SELECT * FROM my_table; Command> exec 1; Command> fetchall;
verticalコマンドの例
Command> call ttlogholds;
< 0, 265352, Checkpoint , DS.ds0 >
< 0, 265408, Checkpoint , DS.ds1 > 2 rows found.Command> vertical call ttlogholds;
HOLDLFN: 0
HOLDLFO: 265352 TYPE: Checkpoint DESCRIPTION: DS.ds0HOLDLFN: 0
HOLDLFO: 265408 TYPE: Checkpoint DESCRIPTION: DS.ds12 rows found.
Command>
アクセス制御が有効になっている場合に新しいユーザーを作成するには、内部ユーザーのパスワード名を一重引用符で囲んで入力します。
ttIsql -connStr "DSN=RunData"
ttIsql (c) 1996-2000, TimesTen, Inc. All rights reserved.
Type ? or "help" for help, type "exit" to quit ttIsql. All commands must end with a semi-colon. (Default setting AutoCommit=1) Command> CREATE USER terry IDENDTIFIED BY `secret';
mybookmark
というXLAブックマークを削除するには、次のように入力します。
ttIsql -connStr "DSN=RunData"
ttIsql (c) 1996-2000, TimesTen, Inc. All rights reserved.
Type ? or "help" for help, type "exit" to quit ttIsql.
All commands must end with a semi-colon.
(Default setting AutoCommit=1)
Command> xladeletebookmark;
XLA Bookmark: mybookmark
Read Log File: 0 Read Offset: 268288 Purge Log File: 0 Purge Offset: 268288 PID: 2004 In Use: No1 bookmark found.
Command> xladeletebookmark mybookmark;
Command> xladeletebookmark;
0 bookmarks found.
複数のttIsqlコマンドは、セミコロンで区切られた行ごとに使用できます。
UTF-8の場合、NCHAR値はUTF-8エンコードに変換されてから出力されます。
ASCIIの場合、ASCII文字に対応するNCHAR値はASCIIとして出力されます。ASCII以外のNCHAR値では、エスケープされたUnicode書式が使用されます。次に例を示します。
U+3042 HIRAGANA LETTER A
これは、次のように出力されます。
Command> SELECT c1 FROM t1;
< a\u3042 >
NCHARパラメータは、先頭がASCII Nで始まる一重引用符で囲まれたリテラルとして入力する必要があります。
Command> prepare SELECT * FROM t1 WHERE c1 = ?;
Command> exec;
All values for Parameters must end with a semi-colon character.
Type `?;' for help on entering parameter values.
Type `*;' to abort the parameter entry process.
Enter Parameter 1> N'XY';
Windowsでは、このユーティリティはすべてのTimesTen Data ManagerとクライアントDSNで使用できます。