MySQL更新查询


可能需要修改MySQL表中的现有数据。你可以使用SQL来做到这一点UPDATE命令。这将修改任何MySQL表的任何字段值。

语法

以下代码块具有UPDATE命令的通用SQL语法,用于修改MySQL表中的数据:

UPDATE table_name SET field1 = new-value1, field2 = new-value2
[WHERE Clause]
  • 你可以总共更新一个或多个字段。

  • 你可以使用WHERE子句指定任何条件。

  • 你可以一次更新一个表中的值。

当你要更新表中的选定行时,WHERE子句非常有用。

从命令提示符更新数据


这将使用带有WHERE子句的SQL UPDATE命令来更新MySQL表中的所选数据newbiego_tbl.

以下示例将更新newbiego_title字段中记录的是newbiego_id为3的记录。

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

mysql> use TUTORIALS;
Database changed

mysql> UPDATE newbiego_tbl 
    -> SET newbiego_title = 'Learning JAVA'
    -> WHERE newbiego_id = 3;
Query OK, 1 row affected (0.04 sec)
Rows matched: 1  Changed: 1  Warnings: 0

mysql>

使用PHP脚本更新数据


你可以在SQL函数中使用带有或不带有WHERE子句的SQL UPDATE命令–mysql_query()。该函数将以与在mysql>提示符下执行的类似方式执行SQL命令。

以下示例更新了newbiego_title字段的记录,其newbiego_id为3。

<?php
    $dbhost = 'localhost:3036';
    $dbuser = 'root';
    $dbpass = 'rootpassword';
    $conn = mysql_connect($dbhost, $dbuser, $dbpass);
   
    if(! $conn ) {
        die('Could not connect: ' . mysql_error());
    }

    $sql = 'UPDATE newbiego_tbl
        SET newbiego_title="Learning JAVA"
        WHERE newbiego_id=3';

    mysql_select_db('TUTORIALS');
    $retval = mysql_query( $sql, $conn );
   
    if(! $retval ) {
        die('Could not update data: ' . mysql_error());
    }
    echo "Updated data successfully\n";
    mysql_close($conn);
?>