gpt4 book ai didi

php - MySQL INSERT 如果记录不存在

转载 作者:搜寻专家 更新时间:2023-10-30 23:37:24 24 4
gpt4 key购买 nike

我想向 MySQL 表中插入一条新记录,但只有在不存在具有相同 user_id 的记录时才应插入。此外,我想获得一个返回的 bool 值,它显示是否插入了新记录。

The table  
like_id | user_id | post_id
1 | 1 | 3
2 | 5 | 3
3 | 12 | 5

示例
此查询 INSERT INTO blog_post_likes (post_id, user_id) VALUES (3, 1) 应该返回 'false'/'0'/或其他具有相同含义的内容,因为已经有相同的记录用户身份。但是这个查询 INSERT INTO blog_post_likes (post_id, user_id) VALUES (3, 34) 应该返回 'true'/1/或其他具有相同 beaning 的东西,因为插入了一条新记录。

我该怎么做?

最佳答案

您必须在要唯一的列中创建一个 UNIQUE CONSTRAINT。在这种情况下,我们提到列 user_id..

SQL 命令:

CREATE TABLE blog_post_likes
(
post_id INT,
like_id INT,
user_id INT NOT NULL UNIQUE,
)

当然,您可以更改现有表以避免丢失表中的现有数据。

ALTER TABLE blog_post_likes ADD CONSTRAINT user_id UNIQUE (user_id)

关于php - MySQL INSERT 如果记录不存在,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40130514/

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