MariaDBでは、UUID_SHORT() は、短いUniversal Unique Identifier(UUID)を返す組み込み関数です。
64ビットの符号なし整数を返します(UUID()によって返される文字列形式の128ビット識別子とは対照的です。 関数)。
構文
構文は次のようになります:
UUID_SHORT() したがって、引数は必要ありません(または受け入れられません)。
例
デモンストレーションの例を次に示します。
SELECT UUID_SHORT(); 結果:
+-------------------+ | UUID_SHORT() | +-------------------+ | 99291717236162560 | +-------------------+
別の機会に呼び出すと、別の値が得られます:
SELECT UUID_SHORT(); 結果:
+-------------------+ | UUID_SHORT() | +-------------------+ | 99291717236162561 | +-------------------+
結果について
UUID_SHORT()によって返される値 次の条件が当てはまる場合、一意であることが保証されます。
-
server_id現在のホストの数は、マスターサーバーとスレーブサーバーのセットの中で一意です -
server_id0の間にあります および255 - サーバーのシステム時刻を
mysqldの間に戻さないでください 再起動 -
UUID_SHORT()を呼び出さないmysqld間で平均して1秒あたり1600万回以上 再起動
UUID_SHORT()を使用するステートメントに注意してください 関数はステートメントベースのレプリケーションには安全ではありません。
UUID()との比較 機能
UUID_SHORT()によって返される結果 UUID()によって返されるものと似ています UUID()によって返される結果を除いて関数 は、aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeeeの5つの16進数のutf8文字列で表される128ビットの数値です。 フォーマット。
2つの比較は次のとおりです。
SELECT
UUID(),
UUID_SHORT(); 結果:
+--------------------------------------+-------------------+ | UUID() | UUID_SHORT() | +--------------------------------------+-------------------+ | e67d0fc6-cd8d-11eb-be04-88e9fe739f3d | 99291717236162562 | +--------------------------------------+-------------------+
これに加えて、MariaDB 10.6.1から、SYS_GUID() Oracleの互換性を強化するために関数が追加されました。
引数なし
前述のように、UUID_SHORT() 引数を受け入れません。引数を渡すとどうなりますか:
SELECT UUID_SHORT(3); 結果:
ERROR 1582 (42000): Incorrect parameter count in the call to native function 'UUID_SHORT'