小编aiz*_*haj的帖子

如何从 PostgreSQL 中的另一个表插入对 UUID 的引用?

我正在学习使用 Sequelize 来使用 PostgreSQL 数据库。以下所有事情都发生在开发人员身上。环境。当手动尝试将数据插入到我的表中以检查是否通过 Sequelize 正确设置、检查失败的单元测试等时,会发生这种情况。

我用 Sequelize 模型制作了两个表:用户和发布。这两个表都生成 UUIDv4。我已经关联了用户hasMany出版物和出版物belongsTo用户(您可以参考额外信息)。

在我的psqlshell 上,我已将以下记录插入到我的 User 表中(为简洁起见,删除了其余数据):

|                   id                   |  firstName | lastName  | ..| 
|----------------------------------------|------------|-----------|---|
|  8c878e6f-ee13-4a37-a208-7510c2638944  |   Aiz      |    ....   |...|
Run Code Online (Sandbox Code Playgroud)

现在,我尝试在引用上面新创建的用户时将记录插入到我的发布表中。这是我在 shell 中输入的内容:

INSERT INTO "Publications"("title", "fileLocation", ..., "userId")VALUES('How to Pasta', 'www.pasta.com', ..., 8c878e6f-ee13-4a37-a208-7510c2638944);
Run Code Online (Sandbox Code Playgroud)

它失败了,我收到以下错误:

ERROR:  syntax error at or near "c878e6f"
LINE 1: ...8c878e6f-ee...
Run Code Online (Sandbox Code Playgroud)

(它指向第 1 行引用中终端上的第二个字符 - 'c')。

这是怎么回事?如果我们想在 psql 中手动输入 UUID,我们是否应该以另一种方式输入 UUID?我们是否将引用的 UUID 粘贴为字符串?我自己的研究中是否缺少正确的方法?


一些额外的信息(如果有帮助的话):

从我的模型来看:

Publication.associate = function(models) { …
Run Code Online (Sandbox Code Playgroud)

sql postgresql uuid sequelize.js

5
推荐指数
1
解决办法
1万
查看次数

标签 统计

postgresql ×1

sequelize.js ×1

sql ×1

uuid ×1