我有一个SQL数据库设置,其中已经有几行数据。如何通过抓取 id 来仅更新一行的一列(约会页面.php?id=1"(?
我已经编写了代码将数据输入到我想要的正确位置表中,但是我在选择id时也遇到了问题
if(isset($_POST["submit"]))
try{
$sql = "INSERT INTO appointments (Notes)
VALUES ('".$_POST["Notes"]."')";
我觉得应该使用= $_GET['id'];
或WHERE appointments.ApptID = :id
,但我无法理解它。
目前,我的SQL表中的"注释"列会获取输入,但它会创建一个仅添加该数据的新空行。我想选择一个现有的行/条目并向其添加注释。
在我的网站上,我有一组基本用例的示例,欢迎您查看它们。 您的情况是使用 PDO 的更新查询。
首先,"插入到现有记录中"称为UPDATE。您需要查看您的SQL教科书。
是的,您需要在查询中加入类似 ApptID = :id 的内容。但是我个人更喜欢简单?标志着
所以它应该是这样的
$sql = "UPDATE appointments SET notes=? WHERE ApptID=?";
$stmt= $dpo->prepare($sql);
$stmt->execute([$notes, $id]);
注意三不应该是任何try
或捕捉东西。
您需要将ApptID字段定义为主键,并在数据库中定义自动增量字段。
在MySQL中,主键是唯一定义记录的单个字段或字段组合。属于主键的任何字段都不能包含 NULL 值。一个表只能有一个主键。
自动增量允许在将新记录插入表中时自动生成唯一编号。通常,这是我们希望在每次插入新记录时自动创建的主键字段。
之后,您可以使用该ApptID通过MySQL中的更新查询更新现有数据