ページの先頭行へ戻る
Symfoware Server V11.1.0 アプリケーション開発ガイド(.NET Data Provider編)
FUJITSU Software

B.2 tuneparamキーワード

tuneparamキーワードには、Symfoware Serverのクライアント用の動作環境ファイルに相当する指定をすることができます。

動作環境の設定項目の中には、tuneparamキーワード、システム用の動作環境ファイル、およびサーバ用の動作環境ファイルで重複して指定できるパラメタがあります。優先順位は以下のとおりです。

参考

データベース簡単運用の場合には、Symfoware Severのインストール時に、システム用の動作環境として最適な環境が設定されるため、チューニングの必要がありません。よって、システム用の動作環境ファイルは、作成不要です。

  1. サーバ用の動作環境ファイル

  2. tuneparamキーワード

  3. システム用の動作環境ファイル

tuneparamキーワードへの実行パラメタの指定形式と、使用可能な実行パラメタ一覧を説明します。

指定形式

tuneparamの指定方法には、以下の2つの方法があります。

記述例

MAX_SQLとWAIT_TIMEを指定した場合

注意

tuneparamキーワードに複数の実行パラメタを指定する場合、値を“;”(セミコロン)で区切って設定します。

実行パラメタ

Symfoware .NET Data Providerを利用するアプリケーションから指定可能な実行パラメタは以下のとおりです。

表B.4 tuneparamキーワードで使用可能な実行パラメタ一覧

分類

実行パラメタ

概要

優先順位

1

2

3

SV

tuneparamキーワードで使用可能なパラメタ

SY

通信

SERVER_ENV_FILE

使用するサーバ用の動作環境ファイル

TRAN_SPEC

SQLエラー発生時のトランザクション

TRAN_TIME_LIMIT

1つのトランザクションの最大使用可能時間

WAIT_TIME

通信時の待ち時間

作業領域など

MAX_SQL

同時に操作できるオブジェクトの数

OPL_BUFFER_SIZE

SQL文の実行手順を格納しておくバッファのサイズ

SORT_MEM_SIZE

作業用ソート領域として使うメモリサイズ

WORK_ALLOC_SPACESIZE

作業用ソート領域および作業用テーブルとして使うファイルサイズ

WORK_MEM_SIZE

作業用テーブルとして使うメモリのサイズ

WORK_PATH

作業用テーブルおよび作業用ソート領域のパス

データ処理

CAL_ERROR

代入処理でオーバフローが起きた場合の処理

表・インデックス

DEFAULT_DSI_TYPE

格納構造定義を行わない表を作成する場合、Symfoware/RDBが自動的に生成する表のDSOの格納構造の選択


(注)

DEFAULT_INDEX_SIZE

格納構造定義を行わないインデックスを作成する場合のインデックスのデータ格納域の初期量、拡張量、ページ長など


(注)


(注)

DEFAULT_OBJECT_TABLE_SIZE

格納構造定義を行わない表を作成する場合のOBJECT構造の表のデータ格納域の初期量、拡張量、ページ長など


(注)


(注)

DEFAULT_TABLE_SIZE

格納構造定義を行わない表を作成する場合の表のデータ格納域の初期量、拡張量、ページ長など


(注)


(注)

DSI_EXPAND_POINT

DSIの容量拡張を起動するか否か


(注)


(注)

INCLUSION_DSI

アプリケーションで使用するDSIを限定する


(注)


(注)

TEMPORARY_INDEX_SIZE

一時表にインデックスを定義する場合のインデックスのデータ格納域の初期量、拡張量など


(注)


(注)

TEMPORARY_TABLE_SIZE

一時表を定義する場合の表のデータ格納域の初期量、拡張量など


(注)


(注)

排他

ISOLATION_WAIT

占有待ちの方式

R_LOCK

占有の単位を行とする

トランザクション

DEFAULT_ACCESS_MODE

トランザクションアクセスモードの初期値を指定する

DEFAULT_ISOLATION

独立性水準の初期値を指定する

デバッグ

ROUTINE_SNAP

ROUTINE_SNAP機能を利用するか否か

アクセスプランおよび性能情報

ACCESS_PLAN

アプリケーション単位でアクセスプランを取得するか否かおよびSQL文に対するアドバイスを出力するか否か

CHOOSE_TID_UNION

WHERE句にブール演算子”OR”、または、行値構成子を指定した場合、TIDユニオンマージのアクセスプランのみを作成するか否か

GROUP_COL_COND_MOVE

導出表を絞り込む探索条件を指定した場合、その探索条件を導出表のWHERE句に移動するか否か

IGNORE_INDEX

インデックスを使用しないアクセスプランを選択するか否か

INACTIVE_INDEX_SCAN

非活性状態のインデックスDSIを含むインデックスを使用したアクセスプランを選択するか否か

JOIN_ORDER

結合表と他の表のジョイン順

JOIN_RULE

ジョインする方法

MAX_SCAN_RANGE

インデックス、クラスタキー、または分割キーの検索範囲の最大数

SAME_COST_JOIN_ORDER

最適化情報を設定していない場合、ジョイン順をV5以前と同じにするか否か

SCAN_KEY_ARITHMETIC_RANGE

四則演算の検索範囲について、インデックスの範囲検索、または、クラスタキー検索を行うか否か

SCAN_KEY_CAST

探索条件のCASTオペランドに指定した列でインデックスの範囲検索、または、クラスタキー検索を行うか否か

SORT_HASHAREA_SIZE

ソート処理がレコードをハッシングして格納するための領域サイズ

SQL_TRACE

アプリケーション単位でSQL性能情報を取得するか否か

SS_RATE

述語ごとの検索範囲の選択率の値

TID_SORT

インデックス検索と表データ取得のアクセスモデルでTIDソートを利用するか否か

TID_UNION

TIDユニオンマージのアクセスモデルを有効にするか否か

USQL_LOCK

UPDATE文:探索またはDELETE文:探索の更新標的レコードを位置づける部分の占有モード

メッセージ

MSG_LANG

表示するメッセージの言語種を設定する

リカバリ

RCV_MODE

アプリケーションのリカバリ水準を指定する


(注)

予約語とSQL機能

SQL_LEVEL

アプリケーションの予約語とSQL機能のレベルを設定する

並列クエリ

MAX_PARALLEL

データベースを並列に検索する場合の多重度


(注)


(注)

PARALLEL_SCAN

アプリケーション単位またはコネクション単位にデータベースを並列に検索するか否か


(注)


(注)

その他

ARC_FULL

アーカイブログ満杯時にエラー復帰するか否か


(注)

互換

TableAdapterCompatible

TableAdapter機能に関するクラス(SymfowareCommandBuilder、SymfowareDataReader)の動作を指定する

DecimalConvertCompatible

NUMERIC型またはDECIMAL型のデータを扱うアプリケーションでのデータの小数点部分の扱いを指定する

SV:サーバ用の動作環境ファイルへの指定が可能であるか否かを表します。

SY:システム用の動作環境ファイルへの指定が可能であるか否かを表します。

○:指定可

-:指定不可

注)データベース簡単運用の場合は、指定できません。

参照

以下で説明していない実行パラメタの詳細については、“アプリケーション開発ガイド(埋込みSQL編)”を参照してください。

通信に関する実行パラメタ

SERVER_ENV_FILE

【指定形式】

SERVER_ENV_FILE = (SQLサーバ名,ファイル名)

【実行パラメタの意味】

使用するサーバ用の動作環境ファイル名を指定します。コネクションごとにサーバのアプリケーション実行環境を変更する場合に指定します。

【パラメタの意味】
SQLサーバ名:

接続するデータベース名を記述します。

ファイル名:

サーバ用の動作環境ファイル名を、絶対パスで指定します。

排他に関する実行パラメタ

R_LOCK

【指定形式】

R_LOCK = ({YES | NO})

【実行パラメタの意味】

占有の単位を行とするかどうかを指定します。

本実行パラメタの設定は、“表B.4 tuneparamキーワードで使用可能な実行パラメタ一覧”の優先順位に従います。いずれの動作環境ファイルにも本実行パラメタが指定されなかった場合、以下の値が設定されます。

R_LOCK = (YES)

【パラメタの意味】
YES:

占有の単位を行とします。このパラメタを指定した場合、サーバ用の動作環境ファイルにDSO_LOCKを指定することはできません。

NO:

占有の単位は、DSO_LOCKの指定に従います。このパラメタを指定し、かつDSO_LOCKが指定されていない場合は、Symfoware/RDBによって自動的に占有の単位が選択されます。

データベース簡単運用の場合、占有の単位は、表またはインデックスとなります。

参照

占有の単位の詳細については、“アプリケーション開発ガイド(共通編)”の“排他制御”を参照してください。

また、データベース簡単運用の場合は、“アプリケーション開発ガイド(共通編)”の“トランザクションと排他制御(データベース簡単運用の場合)”を参照してください。

注意

  • システム用の動作環境ファイルまたはtuneparamキーワードのR_LOCKがNOの場合、tuneparamキーワードのDEFAULT_ISOLATIONにREPEATABLE_READを指定する、またはSymfowareConnectionクラスのBeginTransactionメソッドのIsolationLevelに“RepeatableRead”を指定しても、独立性水準はSERIALIZABLEになります。

  • システム用の動作環境ファイルまたはtuneparamキーワードのR_LOCKがYESの場合、tuneparamキーワードのDEFAULT_ISOLATIONにSERIALIZABLEを指定する、またはSymfowareConnectionクラスのBeginTransactionメソッドのIsolationLevelに“Serializable”を指定しても、独立性水準はREPEATABLE READになります。

  • データベース簡単運用でない場合、システム用の動作環境ファイルのR_LOCKがNOまたはtuneparamキーワードのR_LOCKがNOのときには、DSO定義でPRECEDENCE(1)が指定されたSEQUENTIAL構造の表にアクセスするアプリケーションの占有の単位はDSIになります。

トランザクションに関する実行パラメタ

DEFAULT_ACCESS_MODE

【指定形式】

DEFAULT_ACCESS_MODE = ({READ_ONLY | READ_WRITE})

【実行パラメタの意味】

トランザクションアクセスモードの初期値を指定します。DEFAULT_ACCESS_MODEが指定された場合、プロセスで最初に実行されるSQL文の直前でSET TRANSACTION文が実行されたことになります。

本実行パラメタの設定は、“表B.4 tuneparamキーワードで使用可能な実行パラメタ一覧”の優先順位に従います。いずれの動作環境ファイルにも本実行パラメタが指定されなかった場合、以下の値が設定されます。

DEFAULT_ACCESS_MODE = (READ_WRITE)

注意

サーバ用の動作環境ファイルのDSO_LOCKを指定して、DEFAULT_ACCESS_MODEを指定した場合は、サーバ接続時にエラーが発生します。データベース簡単運用の場合、サーバ用の動作環境ファイルでDSO_LOCKの指定はできません。

【パラメタの意味】
READ_ONLY:

トランザクションアクセスモードの初期値をREAD ONLYとします。

READ_WRITE:

トランザクションアクセスモードの初期値をREAD WRITEとします。

DEFAULT_ISOLATION

【指定形式】

DEFAULT_ISOLATION = ({DEFAULT | READ_UNCOMMITTED | READ_COMMITTED | REPEATABLE_READ | SERIALIZABLE})

【実行パラメタの意味】

独立性水準の初期値を指定します。DEFAULT_ISOLATIONが指定された場合、プロセスで最初に実行されるSQL文の直前でSET TRANSACTION文が実行されたことになります。

本実行パラメタの設定は、“表B.4 tuneparamキーワードで使用可能な実行パラメタ一覧”の優先順位に従います。いずれの動作環境ファイルにも本実行パラメタが指定されなかった場合、以下の値が設定されます。

DEFAULT_ISOLATION = (DEFAULT)

データベース簡単運用で、本実行パラメタの指定を省略した場合は、省略値として以下の値が設定されます。

DEFAULT_ISOLATION = (READ COMMITTED)

【パラメタの意味】
DEFAULT:

独立性水準の初期値はシステム用の動作環境ファイルにおけるDEFAULT_ISOLATIONの指定に従います。
tuneparamキーワードのDEFAULT_ISOLATIONにDEFAULTを指定し、かつ、システム用動作環境ファイルのDEFAULT_ISOLATIONの値を指定していない場合、独立性水準の初期値は、READ_UNCOMMITTEDとなります。

READ_UNCOMMITTED:

独立性水準の初期値をREAD UNCOMMITTEDとします。

READ_COMMITTED:

独立性水準の初期値をREAD COMMITTEDとします。

REPEATABLE_READ:

独立性水準の初期値をREPEATABLE READとします。

SERIALIZABLE:

独立性水準の初期値をSERIALIZABLEとします。

注意

  • システム用の動作環境ファイルまたはtuneparamキーワードのR_LOCKがNOの場合、DEFAULT_ISOLATIONにREPEATABLE_READを指定しても、独立性水準はSERIALIZABLEになります。

  • システム用の動作環境ファイルまたはtuneparamキーワードのR_LOCKがYESの場合、DEFAULT_ISOLATIONにSERIALIZABLEを指定しても、独立性水準はREPEATABLE READになります。

◆アクセスプランに関する実行パラメタ

ACCESS_PLAN

【指定形式】

ACCESS_PLAN = ({ON | OFF},ファイル名[,[出力レベル][,[SQLアドバイザ出力レベル]]])

【実行パラメタの意味】

アプリケーション単位でアクセスプランを取得するかどうかを指定します。

本実行パラメタの指定を省略した場合は、以下の値が設定されます。

ACCESS_PLAN = (OFF)

参照

アクセスプランについては、“アプリケーション開発ガイド(共通編)”の“アクセスプラン”を参照してください。

【パラメタの意味】
ON:

アクセスプラン取得機能を利用する場合に指定します。

OFF:

アクセスプラン取得機能を利用しない場合に指定します。

ファイル名:

出力先のサーバ側のファイル名を、絶対パスで指定します。指定されたファイルがすでに存在する場合は、情報を追加して出力します。
また、指定するパスが存在することと、CONNECT文で指定したユーザIDに対する書込み権があることを確認してください。

出力レベル:

出力レベルには1または2を指定します。1を指定すると、アクセスプランのセクション情報のみを出力します。2を指定すると、セクション内の各エレメント詳細情報も出力します。省略した場合は、2が指定されたものとみなします。

SQLアドバイザ出力レベル:

SQLアドバイザ出力レベルには、“ADVICE”または“NOADVICE”を指定します。“ADVICE”を指定すると、SQL文に対するアドバイスを出力します。“NOADVICE”を指定すると、SQL文に対するアドバイスを出力しません。省略した場合は、“ADVICE”が指定されたものとみなします。

◆互換に関する実行パラメタ

TableAdapterCompatible

【指定形式】

TableAdapterCompatible = ({ON | OFF})

【実行パラメタの意味】

TableAdapter機能に関するクラス(SymfowareCommandBuilder、SymfowareDataReader)の動作を指定します

本実行パラメタの指定を省略した場合は、以下の値が設定されます。

TableAdapterCompatible = (OFF)

【パラメタの意味】
ON:

TableAdapter機能に関するクラス(SymfowareCommandBuilder、SymfowareDataReader)は、V10.1.0以前の仕様で動作します。

OFF:

TableAdapter機能に関するクラス(SymfowareCommandBuilder、SymfowareDataReader)は、V10.1.1以降の仕様で動作します。MSDNと同様の動作となります。

それぞれの値を指定した場合の動作の違いを説明します。

SymfowareCommandBuilderクラスの動作
属性

属性名

V10.1.1以降

V10.1.0以前

CatalogLocation

既定値は、CatalogLocation.Endです。
属性値として、CatalogLocation.Endが固定で設定されているため、ユーザの設定値は無視されます。

既定値は、CatalogLocation. Startです。
属性値として、CatalogLocation.StartまたはCatalogLocation.Endが設定可能です。

CatalogSeparator

既定値は、句点(.)です。
属性値として、句点(.)が固定で設定されているため、ユーザの設定値は無視されます。

既定値は、句点(.)です。
属性値として、任意の文字列が設定可能です。

DataAdapter

ベースクラスのDataAdapterプロパティは、SymfowareCommandBuilderと一致します。

ベースクラスのDataAdapterプロパティは、SymfowareCommandBuilderと一致しません。

QuotePrefix

既定値は、二重引用符(“)です。
属性値として、二重引用符(“)が固定で設定されているため、ユーザの設定値は無視されます。

既定値は、空文字列です。
属性値として、任意の文字列が設定可能です。

QuoteSuffix

既定値は、二重引用符(“)です。
属性値として、二重引用符(“)が固定で設定されているため、ユーザの設定値は無視されます。

既定値は、空文字列です。
属性値として、任意の文字列が設定可能です。

SchemaSeparator

既定値は、句点(.)です。
属性値として、句点(.)が固定で設定されているため、ユーザの設定値は無視されます。

既定値は、句点(.)です。
属性値として、任意の文字列が設定可能です。

◆メソッド

メソッド

V10.1.1以降

V10.1.0以前

Dispose(bool)

ベースクラスとSymfowareCommandBuilderに関するリソースを両方とも解放します。

SymfowareCommandBuilderに関するリソースのみを解放します。

GetDeleteCommand()

  • SELECT文に、主キーとユニークなどの情報がない場合、DeleteCommandの生成時、Microsoftのメッセージが出力されます。

  • 作成したSymfowareCommandオブジェクトのParameterCollection中のParameter名の形式は“P”で始まる文字列定数となります。

  • SELECT文に、主キーとユニークなどの情報がない場合、DeleteCommandの生成時、下記の異常メッセージが出力されます。
    “JYP9206E SQL文の生成に失敗しました”

  • 作成したSymfowareCommandオブジェクトのParameterCollection中のParameter名の形式は“param_”で始まる文字列定数となります。

GetInsertCommand()

作成したSymfowareCommandオブジェクトのParameterCollection中のParameter名の形式は“P”で始まる文字列定数となります。

作成したSymfowareCommandオブジェクトのParameterCollection中のParameter名の形式は“param_”で始まる文字列定数となります。

GetUpdateCommand()

  • SELECT文に、主キーとユニークなどの情報がない場合、UpdateCommandの生成時、Microsoftのメッセージが出力されます。

  • 作成したSymfowareCommandオブジェクトのParameterCollection中のParameter名の形式は“P”で始まる文字列定数となります。

  • SELECT文に、主キーとユニークなどの情報がない場合、UpdateCommandの生成時、下記の異常メッセージが出力されます。
    “JYP9206E SQL文の生成に失敗しました”

  • 作成したSymfowareCommandオブジェクトのParameterCollection中のParameter名の形式は“param_”で始まる文字列定数となります。

RefreshSchema()

ベースクラスとSymfowareCommandBuilderと関連するコマンドについての情報を削除します。

SymfowareCommandBuilderと関連するコマンドを削除します。

SymfowareDataReader.GetSchemaTable()メソッドの返却値

フィールド

V10.1.1以降

V10.1.0以前

BaseServerName

BNull.Value

String.Empty

ColumnOrdinal

0から番号を振ります。

1から番号を振ります。

ProviderType

データ型は枚挙型、枚挙名
SymfowareDbType

データ型はSystem.String

NumericPrecision

  • データ型はSystem.Int16

  • ProviderType は数値データ型以外の場合、DBNull.Value値になります。

  • データ型はSystem.Int32

  • ProviderType は数値データ型以外の場合、0になります。

NumericScale

  • データ型はSystem.Int16

  • ProviderType は、
    DBTYPEDECIMAL または
    DBTYPE_NUMERIC以外の場合、DBNull.Value 値になります。

  • データ型はSystem.Int32

  • ProviderType は、
    DBTYPE_DECIMAL または DBTYPE_NUMERIC以外の場合、0になります。

BaseCatalogName

DBNull.Value

現在接続中のデータベース名

DecimalConvertCompatible

【指定形式】

DecimalConvertCompatible = ({ON | OFF})

【実行パラメタの意味】

NUMERIC型またはDECIMAL型のデータを扱うアプリケーションで、データの小数点以下の桁数が、位取りに指定した桁数よりも小さい場合の動作を指定します。

本実行パラメタの指定を省略した場合は、以下の値が設定されます。

DecimalConvertCompatible = (OFF)

【パラメタの意味】
ON:

NUMERIC型またはDECIMAL型のデータを扱うアプリケーションで、データの小数点以下の桁数が、位取りに指定した桁数よりも小さい場合に、0を付加しないで、アプリケーションに返却します。

V10.1.1以前と同様の動作となります。

OFF:

NUMERIC型またはDECIMAL型のデータを扱うアプリケーションで、データの小数点以下の桁数が、位取りに指定した桁数よりも小さい場合に、0を付加します。

DECIMAL(12,6)で定義された列に、“123.456”のデータを格納した場合のデータ参照結果

  • DecimalConvertCompatibleがONの場合:123.456

  • DecimalConvertCompatibleがOFFの場合:123.456000