リンク
インターシステムズ(日) └日本語ドキュメント インターシステムズ(US) (有)エムブイビイ ダイナシステム(株) Googleグループ(英語) Googleグループ(日本語) George James Software cache'infoアーカイブ 【広告】
|
SQL文を実行するExecute SQL command.
Cache'でSQL文を実行するには以下のような方法があります。 システム管理ポータルからの実行システム管理ポータルに接続し、
画面中央のデータ管理から、「SQL」を選択してください。 画面のテキストエリアにSQL文を入力してください。
「クエリ実行」ボタンを押すと、テキストエリアの下側に結果が表示されます。 ターミナルからの実行ターミナルからSQLを実行するには、SQL Shellを使用する方法と、ResulSetを使用する方法があります。 SQL Shellを使用してSQLを実行する
%ResultSetを使用してSQLを実行する
こちらはSQL Shellを実行する方法と比べると手間がかかりますが、SQL Shellはルーチン内で使えないためこの手順は覚えておく必要があります。
※最近のバージョンでは%SQL.Statementの使用が推奨されているようです。http://docs.intersystems.com/cache20101j/csp/docbook/DocBook.UI.Page.cls?KEY=GSQL_dynsql それぞれの違いについても、このページに以下のように記述されています。 ルーチン中からの実行%ResultSetを使用してSQLを実行するターミナルからの実行の%ResultSetを使用してSQLを使用するを参照してください。
&sql( ) タグを使用してSQLを実行する
詳細はhttp://docs.intersystems.com/cache20101j/csp/docbook/DocBook.UI.Page.cls?KEY=GSQL_esqlを参照してください。 CSPからの実行
ルーチン中からの実行の各方法が使えます。
<script language=SQL> タグを使用してSQLを実行する
CSP中でのみ使える<script language=SQL>というタグがあります。%ResultSetを使用してSQLを使用する方法の%ResultSetを用意するまでの手順が簡素化されたものと考えて良いと思います。
<script language="SQL" NAME="tags">
このように、NAME=で指定した変数名(この例ではtags)に%ResultSetが作成されます。SELECT empNo, Name FROM Employee WHERE Age < #(age)# </script> <csp:while condition="tags.Next()" counter="c"> <tr> <td>#(emps.Get("empNo"))# <td>#(emps.Get("Name"))# </csp:while> <script language=SQL>内での変数の使用時には#( )#で囲む必要がありますが、その場合はSQLインジェクションを発生させないよう注意が必要です。 SQLマネージャからの実行(Cache'5.0以前)Cache' 5.0以前にはSQLマネージャというツールがありました。以下はその使用方法です。 SQLマネージャを実行してください。 画面右側の白いテキストボックスにSQL文を入力してください。
画面右端の、「クエリの実行」アイコンをクリックすると下側に結果が表示されます。 |