MySQLi - 更新查询

可能需要修改MySQLi表中的现有数据.您可以使用SQL UPDATE 命令执行此操作.这将修改任何MySQLi表的任何字段值.

语法

这是UPDATE命令的通用SQL语法,用于将数据修改为MySQLi表 :

UPDATE table_name SET field1 = new-value1, field2 = new-value2 [WHERE Clause]

  • 您可以完全更新一个或多个字段.

  • 您可以使用WHERE子句指定任何条件.

  • 您可以一次更新单个表中的值.

当您想要更新表中的选定行时,WHERE子句非常有用.

从命令提示符更新数据

这将使用带有WHERE子句的SQL UPDATE命令将所选数据更新到MySQLi表tutorials_inf.

示例

以下示例将更新具有tutorial_inf的记录的名称字段.

root@host# mysql -u root -p password;
Enter password:*******

mysql> use TUTORIALS;
Database changed

mysql> UPDATE tutorials_inf 
   -> SET name = 'johar' 
   -> WHERE name = 'sai';
Query OK, 1 row affected (0.04 sec)
Rows matched: 1  Changed: 1  Warnings: 0

mysql>

使用PHP脚本更新数据

您可以将带有或不带WHERE CLAUSE的SQL UPDATE命令用于PHP函数 mysqli_query().该函数将以类似于mysql>执行的方式执行SQL命令.提示.

示例

尝试以下示例更新记录的名称字段.

<?php
   $dbhost = 'localhost:3306';
   $dbuser = 'root';
   $dbpass = '';
   $dbname = 'TUTORIALS';
   $conn = mysqli_connect($dbhost, $dbuser, $dbpass,$dbname);
   
   if(! $conn ) {
      die('Could not connect: ' . mysqli_error());
   }
   echo 'Connected successfully<br>';
   $sql = ' UPDATE tutorials_inf SET name="althamas" WHERE name="ram"';
   
   if (mysqli_query($conn, $sql)) {
      echo "Record updated successfully";
   } else {
      echo "Error updating record: " . mysqli_error($conn);
   }
   mysqli_close($conn);
?>

示例输出应该是这样的 :

Connected successfully
Record updated successfully