説明
V4.4.2バージョンでは、この変数はV4.4.2 BP1バージョンから導入されました。
機能の概要
json_float_full_precisionは、JSON内の数値を解析する際の精度モードを制御します。
権限要件
クエリ変数
グローバルレベル
sysテナントとすべてのユーザーテナントはSHOW VARIABLESステートメント、またはSYS.TENANT_VIRTUAL_GLOBAL_VARIABLEビュー(Oracleモード)およびinformation_schema.GLOBAL_VARIABLESビュー(MySQLモード)を使用してグローバルシステム変数の値を確認できます。セッションレベル
sysテナントとすべてのユーザーテナントはSHOW VARIABLESステートメント、またはSYS.TENANT_VIRTUAL_SESSION_VARIABLEビュー(Oracleモード)およびinformation_schema.SESSION_VARIABLESビュー(MySQLモード)を使用してセッションシステム変数の値を確認できます。
変数の変更
グローバル有効
sysテナントはグローバルシステム変数の値を直接変更できます。- MySQLユーザーテナントは
SUPERまたはALTER SYSTEM権限が必要です。 - Oracleユーザーテナントは
ALTER SYSTEM権限が必要です。
セッション有効
sysテナントとすべてのユーザーテナントは、自身のテナントに属するセッションシステム変数の値を直接変更できます。
プロパティの説明
プロパティ |
説明 |
|---|---|
| パラメータタイプ | Bool |
| デフォルト値 | False |
| 値の範囲 |
|
| 適用範囲 |
|
| 変更は可能か | はい。SETステートメントを使用して変更できます。 |
使用方法
json_float_full_precision機能は主に、PolarDBなど同様のオプションをサポートする他のデータベースから移行する際の互換性サポートを提供するために使用されます。取り得る値は以下のとおりです:
True:JSON内の数値を高精度で解析しますが、解析速度が低下します。False:JSON内の数値を低精度で解析し、解析速度が向上します。
設定例
セッション有効:
JSON内の数値を低精度で解析し、速度を向上させます。
obclient> SET json_float_full_precision = False;JSON内の数値を高精度で解析し、速度を低下させます。
obclient> SET json_float_full_precision = True;
グローバル有効:
JSON内の数値を低精度で解析し、速度を向上させます。
obclient> SET GLOBAL json_float_full_precision = False;JSON内の数値を高精度で解析し、速度を低下させます。
obclient> SET GLOBAL json_float_full_precision = True;