首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将一条信息插入到已存在的记录中?

如何将一条信息插入到已存在的记录中?
EN

Stack Overflow用户
提问于 2019-08-14 12:01:46
回答 2查看 67关注 0票数 0

我有一个SQL数据库安装程序,其中已经有多行数据。如何通过获取id (appointmentspage.php?id=1")来仅更新一行中的一列?

我已经编写了将数据输入到我想要的正确位置表中的代码,但我在选择id时也遇到了问题。

代码语言:javascript
复制
if(isset($_POST["submit"]))
try{
$sql = "INSERT INTO appointments (Notes)
VALUES ('".$_POST["Notes"]."')";

我觉得应该使用= $_GET['id'];WHERE appointments.ApptID = :id,但我无法理解。

目前,我的SQL表中的'Notes‘列获得了一个输入,但它创建了一个新的空行,其中只添加了该数据。我想选择一个现有的行/条目,并在其中添加注释。

EN

回答 2

Stack Overflow用户

发布于 2019-08-14 12:16:51

在我的网站上,我有一组基本用例的示例,欢迎您查看。你的案例应该是UPDATE query using PDO

首先,“插入到现有记录中”被称为更新。你需要看看你的SQL教科书。

是的,在您的查询中需要类似ApptID = :id的内容。然而,就我个人而言,我更喜欢简单?标记

所以它应该是这样的

代码语言:javascript
复制
$sql = "UPDATE appointments SET notes=? WHERE ApptID=?";
$stmt= $dpo->prepare($sql);
$stmt->execute([$notes, $id]);

注意三不应该是任何try或捕获周围的东西。

票数 2
EN

Stack Overflow用户

发布于 2019-08-14 13:34:13

您需要在数据库定义中将ApptID字段定义为具有自动增量字段的主键。

在MySQL中,主键是唯一定义记录的单个字段或字段组合。作为主键一部分的所有字段都不能包含空值。一个表只能有一个主键。

自动递增允许在向表中插入新记录时自动生成唯一编号。通常,这是我们希望在每次插入新记录时自动创建的主键字段。

之后,您可以使用MySQL中的更新查询来使用该ApptID更新现有数据

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57488010

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档