アプリケーションプログラミングインターフェースガイド> DSL API> データソース> リレーショナルデータソース
 
リレーショナルデータソース
このセクションでは、リレーショナルデータソースを作成、変更、または削除するためのDSLAPIの使用法について説明します。
ネイティブ接続プロパティを使用したリレーショナルデータソースの作成
ネイティブプロパティは、DSL構文の「SETNATIVE PROPERTIES」を使用して、JSON形式の名前と値のペアで指定できます。 JSON形式はキーと値のペアとして指定でき、キーはmodel.SYS_DATASOURCE_ATTRIBUTE_DEFSテーブルから取得したdefinition_nameを表します。 Definition_nameは、大文字と小文字を区別しない方法で指定できます。
考慮事項
以下に、ネイティブプロパティ構文を使用してリレーショナルデータソースをオペレーションする際に考慮すべきいくつかのポイントを示します。
1。 標準のDSL拡張形式を使用したネイティブプロパティ間の衝突はエラーをスローします。たとえば、「urlIP」がSET NATIVE PROPERTIES構文のプロパティとして指定され、「CONNECT USING HOST'xxx '」構文でも指定されている場合、これを示すエラーが表示されます。
2。 プロパティ/定義にDSL拡張構文が使用可能な場合にプロパティが使用される場合の警告。たとえば、「urlIP」がSET NATIVE PROPERTIES構文のプロパティとして指定され、「CONNECT USING HOST」として標準のDSL構文を使用して指定されていない場合、警告がcs_server.logに記録され、次の目的で使用できる構文が示されます。この特定のプロパティ。これは、ユーザーが可能な限りDSL構文を使用するように促すために行われます。ただし、プロパティに対応するDSL構文がない場合、警告はログに記録されません。データソースを作成または変更する方法については、のセクションを参照してください。
curl -d "[\"CREATE DATASOURCE /shared/examples/relationalDS BASED ON ADAPTER 'PostgreSQL 9.1' SET NATIVE PROPERTIES {\\\"urlIP\\\":\\\"localhost\\\", \\\"urlPort\\\":9408, \\\"urlDatabaseName\\\":\\\"orders\\\", \\\"login\\\":\\\"tutorial\\\", \\\"password\\\":\\\"password\\\"} SET ANNOTATION 'this is a Postgres datasource created using DSL api native properties'\"]" -u "admin:admin" -X POST "http://localhost:9400/rest/execute/v1/actions/dsl/invoke" -H "Content-Type:application/json"
DSLキーワードを使用したデータソースの作成
考慮事項
DSLキーワードを使用してリレーショナルデータソースをオペレーションする際に考慮すべきいくつかのポイントを以下に示します。
1。 作成時に接続プロパティが指定されていない場合、イントロスペクションに必要な情報として、データソースに対してイントロスペクションは実行されません。データソースは内省なしで作成されます。後でデータソースを変更して接続プロパティを追加すると、データソースの完全なイントロスペクションが実行されます。
2。 作成時に認証プロパティが指定されていない場合、イントロスペクション中にエラーが表示されますが、データソースは正常に作成されます。
3。 QUOTED_STRING ticket_cacheの場合、明示的なNULLキーワードまたは「NULL」(引用符で囲まれた文字列として)を指定できます。イントロスペクション中に何らかの理由でnullが無効になると、エラーが表示されます。
:予期しない入力が行われた場合、またはリソースが欠落している場合は、エラーが表示されます。
Postgresデータソースds1の作成
curl -d "[\"CREATE DATASOURCE /shared/examples/ds1 BASED ON ADAPTER 'PostgreSQL 9.1'
CONNECT USING host 'localhost' port 5432 DATABASE_NAME 'orders'
AUTHENTICATE IN BASIC MODE USING LOGIN 'tutorial' PASSWORD 'password' PASS_THROUGH_LOGIN_TRUE
SET ANNOTATION 'this is a datasource created using DSL api'\"]"
-u "admin:admin" -X POST "http://localhost:9400/rest/execute/v1/actions/dsl/invoke" -H "Content-Type:application/json"
Oracleデータソースoracledsの作成
curl -d "[\"CREATE DATASOURCE /shared/examples/oracleds BASED ON ADAPTER 'Oracle 11g (Thin Driver)'
CONNECT USING host 'xxx.xx.x.xx' port 1521 DATABASE_NAME 'xxxxx'
AUTHENTICATE IN BASIC MODE USING LOGIN 'user' PASSWORD 'password'
SET ANNOTATION 'this is an oracle datasource created using DSL api'\"]"
-u "admin:admin" -X POST "http://localhost:9400/rest/execute/v1/actions/dsl/invoke" -H "Content-Type:application/json"
名前にスペースを含むPostgresデータソースds1の作成
curl -d "[\"CREATE DATASOURCE /shared/examples/\\\"ds 1\\\" BASED ON ADAPTER 'PostgreSQL 9.1'
CONNECT USING host 'localhost' port 5432 DATABASE_NAME 'orders'
AUTHENTICATE IN BASIC MODE USING LOGIN 'tutorial' PASSWORD 'password' PASS_THROUGH_LOGIN_TRUE
SET ANNOTATION 'this is a datasource created using DSL api'\"]"
-u "admin:admin" -X POST "http://localhost:9400/rest/execute/v1/actions/dsl/invoke" -H "Content-Type:application/json"