このページは機械翻訳によるものです。内容の正確さは保証しておりません。 人力翻訳を依頼する

UUID-OSSP拡張機能を使用してUUIDを生成する

更新日時2024-01-11 08:31

このトピックでは、UUID-OSSP拡張機能を使用してユニバーサル一意識別子 (UUID) を生成する方法について説明します。

UUID-OSSP拡張機能の説明

UUID-OSSP拡張は、UUIDを生成するために使用されるいくつかの標準アルゴリズムをサポートする。 UUID-OSSP拡張は、いくつかの特別なUUID定数を生成する関数も提供します。

標準のUUIDには、16進数の32桁とハイフン (-) の合計36文字があり、ハイフン (-) で区切られた5つのグループで記述されています。 UUIDの形式は、Group of 8 characters-Group of 4 characters-Group of 4 characters-Group of 4 characters-Group of 12 charactersです。

a0eebc99-9c0b-4ef8-bb6d-6bb9bd380a1 1
標準のUUIDは、次のいずれかの方法で表すこともできます。
  • 小文字は大文字に置き換えられます。
    A0EEBC99-9C0B-4EF8-BB6D-6BB9BD380A1 1
  • すべての文字は中括弧 {} で囲まれています。
    {a0eebc99-9c0b-4ef8-bb6d-6bb9bd380a11}
  • 一部またはすべてのハイフン (-) は省略されます。
    a0eebc999c0b4ef8bb6d6bb9bd380a11
  • ハイフン (-) は、16進数の4桁ごとに連結するために使用されます。
    a0ee-bc99-9c0b-4ef8-bb6d-6bb9-bd38-0a1 1

UUID-OSSP拡張機能を有効または無効にするステートメント

  • UUID-OSSP拡張機能を有効にします。
    拡張の作成 "uuid-ossp";
  • UUID-OSSP拡張機能を無効にします。
    ドロップ延長 "uuid-ossp";
説明
UUID-OSSP拡張機能をインストールするには、特権アカウントを使用する必要があります。

UUID-OSSP拡張機能の機能

  • UUIDを返す関数
    関数説明
    関数説明
    uuid_generate_v1()この関数は、バージョン1のUUIDを生成します。 バージョン1のUUIDは、タイムスタンプとコンピュータのMACアドレスに基づいて生成されます。
    説明
    バージョン1のUUIDは、UUIDを生成したコンピューターと、UUIDが生成された時刻を示します。 このタイプのUUIDは、高いセキュリティを必要とするアプリケーションには適していません。
    uuid_generate_v1mc()この関数は、バージョン1のUUIDを生成します。 この関数は、uuid_generate_v1() 関数とは異なります。 uuid_generate_v1mc() 関数はランダムなマルチキャストMACアドレスを使用してUUIDを生成し、uuid_generate_v1() 関数はコンピュータの実MACアドレスを使用してUUIDを生成します。
    uuid_generate_v3 (名前空間uuid, name text)この関数は、指定した名前を使用して、指定した名前空間にバージョン3のUUIDを生成します。
    • 名前空間は、uuid_ns_*() 関数の1つによって返される定数です。 次の表に、関数を示します。
    • nameは、指定された名前空間の識別子です。
    例:
    SELECT uuid_generate_v3(uuid_ns_url(), 'example.com');

    nameパラメーターは、MD5ハッシュアルゴリズムに基づいてハッシュされます。 生成されたUUIDから平文を導出することはできない。 この関数を使用して生成されるUUIDは、ランダムアルゴリズムを必要とせず、システムを実行するために必要な環境変数から独立しています。 この場合、UUIDを再生することができる。

    uuid_generate_v4()この関数は、乱数に基づいてバージョン4のUUIDを生成します。
    uuid_generate_v5 (名前空間uuid, name text)この関数は、バージョン3のUUIDを生成するのと同様に、バージョン5のUUIDを生成する。 違いは、バージョン5のUUIDを生成するためにSHA-1ハッシュアルゴリズムが使用されることです。 このアルゴリズムは、MD5ハッシュアルゴリズムよりも安全です。 したがって、バージョン5のUUIDが推奨されます。
  • UUID定数を返す関数
    関数説明
    関数説明
    uuid_nil()この関数は、nil UUID定数を返します。 このUUID定数は、実際のUUIDではない。
    uuid_ns_dns()この関数は、UUIDのドメインネームシステム (DNS) 名前空間を指定する定数を返します。
    uuid_ns_url()この関数は、UUIDのURL (Uniform Resource Locator) 名前空間を指定する定数を返します。
    uuid_ns_oid()この関数は、UUIDのISOオブジェクト識別子 (OID) 名前空間を指定する定数を返します。
    説明
    ISO OIDは、ASN.1 (Abstract Syntax Notation One) 標準を使用して定義され、PostgreSQLで使用されるOIDとは異なります。
    uuid_ns_x500()この関数は、UUIDのX.500識別名 (DN) 名前空間を指定する定数を返します。

  • 次のステートメントを実行して、バージョン1のUUIDを生成します。
    SELECT uuid_generate_v1();

    次の情報が返されます。

    uuid_generate_v1
    --------------------------------------
     a6808efc-13c8-11ed-ad4f-00163e010e52
    (1行) 
  • 次のステートメントを実行して、バージョン3のUUIDを生成します。
    SELECT uuid_generate_v3(uuid_ns_url(), 'example.com');

    次の情報が返されます。

    uuid_generate_v3
    --------------------------------------
     a0473a67-27a1-3c05-a2d1-5c134639347f
    (1行) 
  • 次のステートメントを実行して、バージョン4のUUIDを生成します。
    SELECT uuid_generate_v4();

    次の情報が返されます。

    uuid_generate_v4
    --------------------------------------
     170d0eb6-520a-4f93-a1b3-89458fffb54c
    (1行) 
  • 次のステートメントを実行して、バージョン5のUUIDを生成します。
    SELECT uuid_generate_v5(uuid_ns_url(), 'example.com');

    次の情報が返されます。

    uuid_generate_v5
    --------------------------------------
     a5cf6e8e-4cfa-5f31-a804-6de6d1245e26
    (1行) 

参考資料

  • 目次 (1, M)
  • UUID-OSSP拡張機能の説明
  • UUID-OSSP拡張機能を有効または無効にするステートメント
  • UUID-OSSP拡張機能の機能
  • 参考資料
フィードバック
phone お問い合わせ

Chat now with Alibaba Cloud Customer Service to assist you in finding the right products and services to meet your needs.

alicare alicarealicarealicare