Skip to main content

This documentation is for an older version of this product. See the latest version of this content.Opens in a new tab

TSQL の移行の計画と実行

InterSystems TSQL では、Sybase と Microsoft の両方で実装されている多彩な機能をサポートするプロシージャ型言語 Transact-SQL を実装しています。Transact-SQL は Sybase Adaptive Server、Microsoft SQL Server (MSSQL)、および他のプラットフォームと共に使用されます。

Note:

この章では主に Sybase Adaptive Server (ASE) の実装について説明しますが、この情報のほとんどは Transact-SQL のすべての実装に関係があります。

また、InterSystems TSQL には、Microsoft SQL Server や Sybase Adaptive Server には含まれない専用の拡張機能がいくつかあります。これらの拡張機能については、"TSQL コマンド" および "TSQL システム・ストアド・プロシージャ" の章で説明します。

このドキュメントでは、Transact-SQL データベース・アプリケーションからスキーマ、ストアド・プロシージャ、およびデータを効果的に移行する方法、および InterSystems IRIS® データ・プラットフォームに TSQL (Transact-SQL) を実装し、最初の移行後に TSQL を管理および強化する方法を説明します。

InterSystems IRIS に移行すべき理由

InterSystems IRIS は効率的な最新の SQL 実装を備えており、さまざまな業界でミッション・クリティカルなアプリケーションにスピード、拡張性、およびセキュリティを提供します。こうしたパフォーマンス上のメリット、垂直方向と水平方向の拡張性、およびエンタープライズ・グレードのセキュリティは、InterSystems IRIS に移行した TSQL アプリケーションにも適用されます。

InterSystems IRIS データベースのすべてのデータは、グローバルと呼ばれる、ツリー・ベースの効率的な多次元スパース配列に保存されます。グローバルは直接アクセスされ、ファイル・システム層が必要ないため、InterSystems IRIS グローバルは非常に高速で柔軟な格納と取得を実現します。グローバルは InterSystems IRIS オブジェクトと SQL インタフェースの基盤になっており、キー/値と NoSQL のパラダイムをサポートしています。また、グローバルによって、InterSystems IRIS は XML や JSON などのダイナミック・データ型を容易に扱うことができます。

InterSystems SQL は、TSQL 構文を完全にサポートするように強化された、高度に最適化された ODBC および JDBC ドライバによって高性能なアクセスを提供します。また、SQL ゲートウェイ機能も備えているため、他のリレーショナル・データベースのデータに簡単にアクセスしたり、データをインポートしたりできます。

InterSystems IRIS での TSQL アプリケーションの実行

InterSystems IRIS プラットフォームで TSQL コードを実行する際に、コードは対応する InterSystems SQL と ObjectScript コードにコンパイルされます。ObjectScript はインターシステムズのオブジェクト指向プログラミング言語です。コンパイルされたコードは InterSystems IRIS 上で実行され、必要に応じてデバッグのために利用できます。このコンパイル手順は完全に自動化されており、1 回限りの移行タスクではありません。移行作業は、旧環境から InterSystems IRIS にスキーマ、データ、および TSQL コードをロードすることで構成されます。その後、TSQL アプリケーション・コードの使用や変更に進むことできます。コードを変更した場合は、変更後にコードをリコンパイルするだけです。

InterSystems IRIS では、TSQL コードを実行するためのインタフェースが多数提供されています。これらのインタフェースには、Sybase または MSSQL を指定する言語オプションが用意されています。

どのインタフェースや言語を使用するかにかかわらず、InterSystems IRIS では、対応する InterSystems SQL と ObjectScript コードのみが実行されます。TSQL がネイティブに実行されることはありません。

Sybase 製品からの移行

InterSystems TSQL の初期の実装は、Sybase ASE のコードの移行をサポートすることを目的に設計されました。この実装は、ネイティブの ASE TSQL コマンドとシステム・ストアド・プロシージャの大半をサポートしています。

また、日付/時刻形式を含むほとんどの ASE スキーマ・オプションを完全にサポートするか受け入れます。さらに、ASE TSQL ストアド・プロシージャ・コードから InterSystems SQL および ObjectScript へのコンパイルもサポートしています。

同じハードウェア上で実行した場合、InterSystems IRIS は Sybase ASE よりも大幅に高いパフォーマンスを発揮します。インターシステムズのミラーリング機能は、Sybase ASE のデータベース・レプリケーションよりも堅牢な復元可能性を実現し、インターシステムズのエンタープライズ・キャッシュ・プロトコル (ECP) とシャーディングは、より柔軟なスケール・アウト・オプションを提供します。

他の Sybase 製品 (Sybase ASA および Sybase IQ) では、TSQL のサポートと言語がわずかに異なります。Sybase ASA から正常に移行できたお客様もいますが、このような移行を計画する際には InterSystems サポートと協力することをお勧めします。

Sybase IQ はその高いパフォーマンスで有名ですが、Sybase IQ から InterSystems IRIS にワークロードを移行したお客様は、以前のプラットフォームよりもさらに高いパフォーマンス・レベルを実感しています。

Microsoft 製品からの移行

Microsoft SQL Server (MSSQL) と Azure データベースでは、Sybase TSQL から分離した後に大きく進化した別の TSQL 言語が使用されています。InterSystems IRIS は、MSSQL 言語のサブセットをサポートしています。ただし、InterSystems IRIS TSQL は主に Sybase 言語のコードの移行をサポートすることを目的に設計されているため、Microsoft TSQL との互換性および移行のサポートは限定的です。

移行の計画

TSQL アプリケーションを移行するということは、結果的に同じスキーマ、データ、およびアプリケーション・コードを (ただし異なるプラットフォームで) 使用することを意味しますが、それでもこのプロジェクトは慎重に計画する価値があります。

インフラストラクチャの計画

InterSystems IRIS では一般的に、同じ TSQL ワークロードを実行するために必要なハードウェア・リソースは他のデータベース・プラットフォームよりも少なくなります。つまり、InterSystems IRIS への移行は、TSQL アプリケーションを実行するインフラストラクチャを検討する格好のタイミングです。

  • InterSystems IRIS の効率性と垂直方向の拡張性を利用して、TSQL アプリケーションの最小限のハードウェアを判断します。

  • InterSystems IRIS はクラウドでも動作します。クラウドでは、さまざまなクラウド・サービス・プロバイダから環境のサイズを適正化するための幅広いオプションが提供されています。

  • ミラーリングは、高可用性と災害復旧の要件を実装するための堅牢で実証済みのメカニズムを提供します。

  • InterSystems IRIS では、非同期ミラー・レポート・サーバを使用してクエリをデータベース・サーバからオフロードし、クエリの使用量が多いシステムのパフォーマンスを大幅に向上させることができます。必要に応じて、データベース・サーバのデータのサブセットをレポート・サーバで提供できます。

  • 最も負荷の高いワークロードの場合、InterSystems IRIS では、クラスタに複数のマシンを導入してユーザとデータ・ボリュームを別々にスケール・アウトすることもできます。

このプロセスの支援については、インターシステムズのテクノロジ・アーキテクトにご相談ください。

アプリケーションのスキーマとコードの確認

InterSystems IRIS TSQL は、TSQL の大部分の概念言語要素をサポートしており、ほとんどのスキーマ・オプションを使用できます。それでも、TSQL アプリケーションを確認して、現在はサポートされていないいくつかの構成要素に依存していないかどうかを判断することをお勧めします。最も簡単な検証方法は、単純に TSQL スキーマとコードを IRIS にインポートしてコンパイルすることです。InterSystems IRIS TSQL コンパイラは、インポートしたコードで見つかった問題にフラグを設定します。これにより、元の TSQL コードをサポートされる別のコードに変更するか、特定のプロシージャを ObjectScript で再実装することによって問題を解決できます。

InterSystems IRIS でサポートされない TSQL の機能

InterSystems IRIS が対応する TSQL の機能は、コードが元々どの言語を対象に開発されたかによって異なります。スキーマとエイリアスの処理方法に違いがあるため、SQL エイリアスの特定の処理とスキーマの名前付けに制限がいくつかあります。これらの制限を回避するには、DDL でスキーマ名を適切に一致させます。また、SQL クエリでテーブル名とエイリアスを混在させる場合は注意して使用します。

多くのテーブル・プロパティと他のスキーマ・オプションはプラットフォーム固有です。これらが使われていても、ユーザやアプリケーションの観点からはテーブルの動作に違いがない場合があります。ストレージ関連のさまざまなプロパティ (分割や圧縮など) だけでなく、直交機能 (暗号化など) もこれに該当します。InterSystems IRIS TSQL は、動作に影響のないプロパティの多くを通知なしで受け入れて無視しますが、動作に影響がある場合はコンパイル・エラーを報告します。

InterSystems IRIS での TSQL コードへのクライアント・アクセス

InterSystems IRIS TSQL はコマンド行 SQL シェルをサポートしており、ユーザはこれを使用して TSQL コマンドとクエリを直接発行できます。最初に現在の SQL シェル・セッションの言語を好みの値に設定する必要があります。例えば、SET DIALECT = Sybase のように設定します。

言語を適切に設定することにより、Java ベースのアプリケーションから JDBC または ODBC ドライバを通して TSQL コマンドを発行することもできます。

InterSystems SQL と ObjectScript を使用すると、InterSystems SQL で提供される一連のアクセス性オプションがさらに広がります。これには、基本となるストレージ・パラダイムへの超高速なネイティブ・アクセスなどがあります。詳細は、InterSystems IRIS のドキュメントを参照してください。

データの確認

InterSystems IRIS は完全なマルチモデル・データベースで、多種多様なデータ型をサポートします。TSQL で使用可能なほとんどのデータ型は InterSystems IRIS でも使用可能です。これらの型は、テーブルを作成するためのデータ定義言語 (DDL) 文によって自動的に適切にマップされます。

Sybase ASE、Sybase ASA、および Microsoft SQL Server は、InterSystems IRIS SQL と同様に、リレーショナル・データについては主に行ベースのストレージ・モデルに従います。Sybase IQ は、InterSystems IRIS では現在サポートされていない列指向のストレージ・パラダイムを使用します。これは内部的なストレージ・モデルであって、SQL 経由でテーブルにアクセスする場合はテーブルそのものの動作には影響しませんが、同じデータを別のモデルで保存した場合、ストレージの使用量に影響する可能性があります。

プロジェクトの計画

以下に、InterSystems IRIS への移行範囲を判断する際に重要な考慮事項を示します。

  • TSQL の専門知識があり、コードを全般的に理解できること。

  • TSQL アプリケーションの元の開発者に機能について質問できること。

  • 移行を検証するためのユニット・テストまたは他のテスト・スクリプトがあること。

  • スキーマとコードの初期評価。複雑さ、およびサポートされない機能の有無の判断。

  • データ・セットのサイズの評価。

  • 切り替え (一括変換または段階的変換) の要件に関する合意。

移行プロセスでは、以下のアプローチを組み合わせて使用することができます。

  • すべての TSQL コードを移行してから、互換性のないコードを修正する。

  • 互換性のある TSQL コードを移行してから、InterSystems SQL と ObjectScript で新規に開発して拡張する。

  • TSQL システムと IRIS SQL システムを並行して実行できるようにし、それぞれの利点を活かしてデータの同期を保つ。インターシステムズは、合意したパフォーマンスおよびサービス・レベルに基づいて何を移行すべきかを判断する際にお客様を支援できます。

移行のテスト

ユニット・テストはあらゆるアプリケーション開発プロジェクトにおいて重要な要素であり、アプリケーション・コードの変更や、基盤となるインフラストラクチャのアップグレードをテストする場合には非常に重要です。したがって、アプリケーションを InterSystems IRIS などの新しいプラットフォームに移行する場合にも大いに役立ちます。TSQL アプリケーションの場合は、TSQL で記述されたユニット・テストを TSQL アプリケーション・コードと共に移行できます。Jenkins のような Java ベースのアプリケーション・コードやフレームワークなど、外部の機能から実行するユニット・テストも、そのまま再利用できます。

TSQL コードとデータ・セットの移行をテストする場合、以下も重要な考慮事項です。

  • パフォーマンス・テスト。アプリケーションの応答時間は前のプラットフォームと同等以上か。

  • スケーラビリティ・テスト。オプションでハードウェア・リソースを追加して、前のプラットフォームと比較してより多くのユーザやデータ・ボリュームをサポートできるか。

  • 正確性テスト。InterSystems TSQL と前のプラットフォームとの間でセマンティクスが一部異なる場合があります (TSQL の異なる実装で異なるのと同様)。例えば、Sybase ASE で提供されている SQL クエリの外部結合の解決などです。正確性テストは特に、移行後にユーザが同じ動作と結果を利用できることを保障するために重要です。

計画の実行

既存の TSQL アプリケーションを InterSystems TSQL に移行するには、4 つの操作 (TSQL 用の InterSystems IRIS の構成、TSQL ソース・コードの移行、メタデータ (DDL) の移行、およびデータの移行) を実行する必要があります。インターシステムズとその実装パートナーがこれらの各タスクを支援します。

システムの設定

InterSystems IRIS の既定のシステム設定の中には、Sybase ASE や他の TSQL プラットフォームの既定の構成と異なるものがあります。インターシステムズおよび TSQL の移行を手がけるプロフェッショナル・サービス・パートナーは、新規インストールした InterSystems IRIS インスタンスを TSQL アプリケーションで使用できるよう準備するためのスクリプトを提供できます。

InterSystems IRIS 構成ユーティリティを使用してシステムを手動で TSQL 用に構成するには、以下の手順を実行します。

  • InterSystems IRIS 管理ポータルに移動します。[システム管理][構成][SQL およびオブジェクトの設定][TSQL 互換性] の順に選択します。ここでは、言語 (Sybase または MSSQL) を指定したり、ANSI_NULLSCASEINSCOMPARE、および QUOTED_IDENTIFIER をオンまたはオフに設定したりできます。この 3 つの既定値はすべて "オフ" で、これは Sybase ASE に適した設定です。

  • 管理ポータルで、[システム管理][構成][SQL およびオブジェクトの設定][SQL] の順に選択します。ここから、[既定のスキーマ] を設定できます。これは、未修飾の DDL エンティティ (テーブル名やプロシージャ名など) すべてに使用される既定のスキーマ名です (パッケージにマッピングされます)。

  • 等値リテラル置換をオフに設定します。これは Sybase ASE に適した設定です。

  • 既定の照合順を %SQLSTRING に設定します。照合オプションは、インデックス照合の目的でのみ文字列の変換を実行します。保存済みのデータは変更されません。%SQLSTRING オプションは、Sybase ASE の既定のバイナリ照合に対応します。この設定が Sybase のソート順に一致していることを確認することが重要です。このステップはデータをロードする前に実行する必要があります

  • 切り捨て設定は、データベース内で文字列の最後に後続スペースが存在する Sybase 実装で必要になる場合があります。これらの文字列を切り捨てることで、文字列を適切に照合できるようになります。"データの照合と文字列の切り捨て" を参照してください。

  • 既定のタイムスタンプの代わりに Posix 時間を使用してパフォーマンスを向上させることを検討します。"タイムスタンプと時刻精度" を参照してください。

  • 一時テーブルは完全にサポートされます。一時テーブルを頻繁に使用する場合は、その設定を最適化して速度を向上させる必要があります。"一時データベースの設定" を参照してください。

  • 管理ポータルで、[システム管理][構成][SQL およびオブジェクトの設定][ユーザ DDL マッピング] の順に選択します。このオプションを使用して、必要なユーザ定義のデータ型をマッピングできます。

コードの移行

最初のアプリケーション移行は簡単です。

  1. DDL のインポート : %SYSTEM.SQL.Schema.ImportDDL()Opens in a new tab メソッド (単一ファイルの場合) または $SYSTEM.SQL.Schema.ImportDDLDir()Opens in a new tab メソッド (1 つのディレクトリに複数のファイルがある場合) のいずれかを使用して、テーブルとビューの定義をインポートします。これらのメソッド内で、DDLMode パラメータを "MSSQLServer" または "Sybase" のいずれかに設定します。これらのメソッドは、DDL 文に加えて、INSERT などの DML 文をインポートし、それらを対応する InterSystems IRIS SQL に変換して実行します。詳細は、"SQL コードのインポート" を参照してください。

    また、$SYSTEM.SQL.Schema.LoadSybase()Opens in a new tab メソッドまたは $SYSTEM.SQL.Schema.LoadMSSQLServer()Opens in a new tab メソッドを呼び出してスキーマをインポートすることもできます。詳細は、"SQL コードのインポート" を参照してください。

    TSQL ソースに CREATE PROC 文が含まれる場合は、CREATE PROC ソースを含むクラス・メソッドが作成されます。InterSystems IRIS では、このクラス・メソッドが既存のクラスに配置されるか、スキーマおよびプロシージャ名に基づく新しいクラスに配置されます。プロシージャが既に存在する場合は、既存のバージョンが新しいバージョンに置き換えられます。スキーマおよびプロシージャから生成されたクラス名に一致するクラスが既に存在する場合は、既存のクラス名が使用されます (以前に TSQL ユーティリティによって生成されている場合)。一致するクラスが存在しない場合は、スキーマおよびプロシージャ名に基づく一意のクラス名が生成されます。プロシージャが正常に作成されると、結果のクラスがコンパイルされます。ロギングが要求される場合は、ソース文が、それを含むクラス名、クラス・メソッド、および生成された仮引数と共に記録されます。プロセスで発生したエラーもログに記録されます。CREATE PROC の処理中にエラーが検出された場合、InterSystems IRIS では、そのプロシージャに対して生成された新しいクラスが削除されます。

  2. エラーのログ・ファイルの検査 : エラー番号で検索します。エラーと正しく実行されたインポートの合計数がログの最後に表示されます。ほとんどの場合、エラーは、このドキュメントの情報を使用して回避または対処できます。

  3. コンパイル : DDL をインポートすると、テーブルおよびビュー定義のコンパイルが自動的に実行されます。その他の TSQL ソース・コードをコンパイルするには、以下のようにコマンドを使用します。

      DO $SYSTEM.OBJ.CompileAll("-l")

    小文字の “L” 修飾子フラグによって、コンパイルの際にロックを適用しないように設定します。フラグ修飾子の完全なリストを確認するには、DO $SYSTEM.OBJ.ShowFlags() を呼び出します。

データの移行

データを移行するためのオプションは以下のとおりです。

  • JDBC または ODBC を使用して SQL ゲートウェイ接続を設定し、データをエクスポート/インポートできるようにします。管理ポータルで [システム管理][構成][接続性][SQLゲートウェイ接続] の順に選択し、[新規接続作成] ボタンを選択して SQL ゲートウェイ接続を定義します。

  • データ移行ウィザードの使用管理ポータルで [システムエクスプローラ][SQL] の順に選択し、[ウィザード] ドロップダウン・リストから [データ移行] を選択して、データ移行ウィザードを構成します。ドロップダウン・リストから既存の SQL ゲートウェイ接続を選択します。これにより、外部ソースからデータを移行するウィザードが実行され、そのデータを格納する InterSystems IRIS クラス定義が作成されます。

  • バルク・ローダを使用します。インターシステムズは、Sybase のさまざまな日付/時刻フィールド保存形式を認識して InterSystems IRIS の標準の内部形式に正規化できるユーティリティを提供しています。この変換を行わないと、Sybase での日付/時刻フィールドの保存方法によっては、データ・ロード時に日付/時刻フィールドで問題が発生する可能性があります。

    データが大量にある場合、一括コピー・プログラム (BCP) ファイルの読み取りをサポートするバルク・ローダを使用するか、好みの抽出、変換、およびロード (ETL) ユーティリティを使用します。InterSystems サポートでデータの一括取り込み用のツールを提供できます。詳細は InterSystems サポートにお問い合わせください。

トラブルシューティング

TSQL Trace 機能をオンにして、コンパイル・ログを検査します。"TRACE" を参照してください。これにより、各操作のタイムスタンプ、各操作の経過時間、グローバル参照の数、および %ROWCOUNT を記録するログが生成されます。このログは、処理されたストアド・プロシージャの詳細情報を TSQL 文ごとに提供します。

さらに、クエリ・キャッシュのソース・コードと生成されたクエリ・キャッシュを保持して、コンパイルされたコードの詳細な情報を提供することも検討してください。"クエリキャッシュのソース" を参照してください。

InterSystems IRIS での TSQL の記述と実行

InterSystems スタジオ統合開発環境または InterSystems SQL を使用して、TSQL を作成および実行できます。

IDE を使用した TSQL の操作

InterSystems IRIS には、サーバ側アプリケーション・コードを構築および管理するための統合開発環境 (IDE)、InterSystems スタジオが付属します。スタジオは、TSQL メソッド本体を ObjectScript クラスに組み込んで SQL 経由でアクセス可能なストアド・プロシージャとして投影する機能により、TSQL の開発を完全にサポートします。

スタジオで TSQL ストアド・プロシージャ (SP) を記述および管理することができます。TSQL SP はクラス・メソッドまたはクエリです。クラス・メソッドは、パラメータを受け取って単一のスカラ結果を返します。クエリはパラメータを受け取って行を返します。単純な SELECT 文をクラス・メソッドに埋め込むと、それらの文は実行されますが、行は返されません。

InterSystems スタジオで TSQL ストアド・プロシージャを作成するには、SqlProc キーワードを使用して、ストアド・プロシージャとしてマークされたクラス・メソッドを作成し、言語を tsql として入力します。以下のテンプレートをベースとして使用できます。

ClassMethod MyTestMethod() As %Integer 
   [ Language = tsql, ReturnResultSets, SqlName=name, SqlProc ]
{
}

"クラス定義リファレンス" のメソッド定義の "Language"、"SqlProc"、および "SqlName" の各キーワードを参照してください。

TSQL でトリガを作成および管理できます。トリガは、TSQL コード内の命令のセットであり、指定した SQL イベントに応答して実行されます。Language=tsql クラス定義キーワードを使用して、トリガを TSQL で記述することを指定できます。UpdateColumnList クラス定義キーワードは、TSQL でのみサポートされています。TSQL では、行レベル・トリガはサポートされていません。"InterSystems SQL の使用法" のドキュメントの “トリガの使用法” を参照してください。

SQL を使用した TSQL の操作

スタジオを使用して TSQL コードを開発する代わりに、SQL 文を発行できるインタフェースを使用して TSQL コードを呼び出すことができます。同じインタフェースのセットを使用し、データ定義言語 (DDL) を介して TSQL ストアド・プロシージャを作成、置換、および削除することもできます。

  • TSQL シェルの使用法

    InterSystems TSQL シェルを使用すると、Transact-SQL コードを InterSystems IRIS 上で直接実行できます。TSQL シェルを使用するには、DO $SYSTEM.SQL.TSQLShell() のように、ターミナルから TSQLShell()Opens in a new tab (または $SYSTEM.SQL.Schema.LoadTSQL()Opens in a new tab) メソッドを呼び出します。これにより、InterSystems SQL シェルが呼び出され、その DIALECT 構成パラメータが現在構成されている TSQL 言語 (MSSQL または Sybase) に設定されます。初期構成の既定値は MSSQL です。

    SQL コードをインタラクティブに入力する際、TSQL シェルでは、各 SQL 文の末尾に文の区切り文字としてセミコロン (;) を配置することがサポートされますが、必須ではありません。

    シェルの RUN コマンドを使用して、TSQL スクリプト・ファイルを実行できます。RUN コマンドでは、"Please enter the end-of-statement delimiter (Default is 'GO'): GO=>" など、一連のプロンプトが表示されます。これにより、InterSystems IRIS の既定の GO 文の代わりに、TSQL のセミコロン (;) をスクリプト・ファイルの文の区切り文字として指定できます。"InterSystems SQL の使用法" のドキュメントの “SQL シェル・インタフェースの使用法” を参照してください。

  • InterSystems SQL シェルの使用法

    InterSystems SQL シェルを使用すると、SET DIALECT コマンドを使用してシェルの言語を Sybase または MSSQL に設定することによって、TSQL コードの行を実行できます。

    シェルの言語を Sybase または MSSQL に設定した場合、SQL シェルでは、各 SQL 文の末尾に文の区切り文字としてセミコロン (;) を配置することがサポートされますが、必須ではありません。シェルの言語を IRIS に設定した場合、文の区切り文字としてセミコロン (;) を使用すると SQLCODE -25 エラーが発生します。

    シェルの RUN コマンドを使用して、TSQL スクリプト・ファイルを実行できます。RUN コマンドでは、"Please enter the end-of-statement delimiter (Default is 'GO'): GO=>" など、一連のプロンプトが表示されます。これにより、InterSystems IRIS の既定の GO 文の代わりに、TSQL のセミコロン (;) をスクリプト・ファイルの文の区切り文字として指定できます。"InterSystems SQL の使用法" のドキュメントの “SQL シェル・インタフェースの使用法” を参照してください。

  • 管理ポータルの SQL インタフェースの使用法

    管理ポータルの SQL インタフェースの [Dialect] オプションでは、SQL 言語を IRIS、Sybase、または MSSQL に設定できます。既定値は IRIS です。選択した言語が、管理ポータルに次回アクセスするときのユーザ・カスタマイズされた既定値になります。"InterSystems SQL の使用法" のドキュメントの “管理ポータルの SQL インタフェースの使用法” を参照してください。

  • ダイナミック SQL の使用法

    ObjectScript の機能である InterSystems IRIS ダイナミック SQL を使用すると、TSQL コード・クエリ、および他の DML 文と DDL 文の限定されたサブセットを ObjectScript コードから実行できます。

    • ダイナミック SQL 文クラスのインスタンスを作成し、%Dialect プロパティを Sybase または MSSQL に設定することができます。その後、そのオブジェクト・インスタンス内で TSQL コマンドを準備して実行します。

    • SQL コマンドを準備する %SYSTEM.SQL.Prepare()Opens in a new tab メソッド、または SQL コマンドの準備と実行の両方を行う %SYSTEM.SQL.Execute()Opens in a new tab メソッドを呼び出すと、文クラスのインスタンスを作成せずにダイナミック SQL を実行することができます。これらのどちらのメソッドでも Dialect パラメータを指定します。

    "InterSystems SQL の使用法" のドキュメントの “ダイナミック SQL の使用法” を参照してください。

FeedbackOpens in a new tab