mySQL:知道何时更新和何时插入?

发布于 2024-08-31 16:48:04 字数 119 浏览 4 评论 0 原文

我仍然是一个 mySQL 新手,所以我想正确执行此操作以避免将来发生事故。

检测何时需要更新表中的条目或插入新条目的正确方法是什么?

谢谢。

I'm still quite a mySQL newbie, so I would like to do this right to avoid future mishaps.

What is the right way to detect when do I need to UPDATE an entry in a table or INSERT a new one?

Thank you.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

羁〃客ぐ 2024-09-07 16:48:04

如果要在某个列中不存在值时插入记录,或者在存在值时更新记录,则应在该列上声明 UNIQUE 约束并使用以下语法:

INSERT
INTO    mytable (key, value)
VALUES  ($newkey, $newvalue)
ON DUPLICATE KEY UPDATE
SET     value = $newvalue

If you want to insert a record if a value does not exist in a certain column, or update it when it exists, you should declare a UNIQUE constraint on the column and use this syntax:

INSERT
INTO    mytable (key, value)
VALUES  ($newkey, $newvalue)
ON DUPLICATE KEY UPDATE
SET     value = $newvalue
风筝有风,海豚有海 2024-09-07 16:48:04

嗯,这个问题很不完整。这不是关于数据库的问题,而是关于您的应用程序逻辑的问题。您应该知道何时创建新内容(将用户添加到您的应用程序)以及何时更改现有记录(更改有关该用户的特定信息)。

也许您应该询问您的具体问题。

Well, this question is very incomplete. It's not question about database, but about your application logic. You should know when you create something new (adding user to your app), and when you change existing record (changing specific information about that user).

Maybe you should ask about your specific problem.

情痴 2024-09-07 16:48:04

Check out the REPLACE INTO statement or the INSERT . . . ON DUPLICATE KEY syntax.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文