gpt4 book ai didi

javascript - 如何使用 uuid 作为 postgres 的默认 ID?

转载 作者:行者123 更新时间:2023-12-05 00:36:28 26 4
gpt4 key购买 nike

目前在关于删除 mongodb 的公告后迁移到 postgres 的过程中,刚刚注意到 ID 只是数字并且自动递增。
我努力了:

  • 使用生命周期 Hook 将默认 ID 设置为 UUID - 无效
  • 安装书架-uuid

  • 有人知道怎么做吗?我非常不希望我的帖子的 ID 是一个自动递增的数字。

    最佳答案

    自动递增的 id 和 uuid 通常是一个不同的概念。对于 uuids 作为主键,通常使用随机值。由于值的范围很大,几乎不可能出现重复。
    您可以定义一个自动生成的 uuid 主键,如下所示:

    CREATE TABLE my_table (
    id UUID DEFAULT MD5(RANDOM()::TEXT || CLOCK_TIMESTAMP()::TEXT)::UUID PRIMARY KEY,
    … other column definitions …
    );
    pgcrypto 扩展还提供了创建随机 uuid 的功能。
    CREATE EXTENSION IF NOT EXISTS pgcrypto;
    CREATE TABLE my_table (
    id UUID DEFAULT gen_random_uuid() PRIMARY KEY,
    … other column definitions …
    );
    使用 Postgres 13 创建用于使用 gen_random_uuid() 的 pgcrypto 扩展不再需要了。

    关于javascript - 如何使用 uuid 作为 postgres 的默认 ID?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67537444/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com