postgresql - 检查 Postgres DB 中是否存在数据
问题描述
我有一个网络应用程序,可以在提交时将数据发送到 postgres 数据库,我对 express 和 Postgres 仍然是新手,所以可能有更好的方法来做我想做的事情。我想为此添加另一层并进行某种验证,如果数据(电子邮件或 ip)已经存在于表中,则用户将被启动并且不允许继续。我尝试使用 NOT EXIST,但不断收到语法错误或“没有与 ON CONFLICT 规范匹配的唯一或排除约束”。我可以做些什么来检查数据库?
DbConnectionManager.pool.query(`INSERT INTO ${Table.Test} (${Table.Email}, ${Table.IP}) VALUES ($1,$2), NOT EXISTS(SELECT * ${Table.Test} WHERE ${Table.Email} = ${Table.Email})`,
[email, ip],
(error, results) => {
if (error) {
throw error;
}
});
这是将输入数据发送到数据库的函数,如果我删除 NOT EXISTS,该函数将起作用。
解决方案
推荐阅读
- sharepoint-2013 - 文档库中缺少 SiteColumn
- azure-active-directory - 日历端点返回 OrganizationFromTenantGuidNotFound
- c++ - clang-format:禁用宏的格式化?
- c# - 如何在进入控制器之前在.net中调试挂起的请求
- java - 如何使用 Kafka 加入两个流
- android - Android findViewById() 仅在 Oreo 上返回 null
- python - 使用 python etree 打印 xml 的嵌套元素
- apache - 如何重新启动容器而不是删除 pod 并重新创建?
- wordpress - 自定义内容并以 PDF 格式导出
- ios - 如何使用 swift 显示带有进度条的 AVAudioPlayer?