MySQLUPDATE查詢

吳夢涵發表於2019-05-12

MySQL UPDATE 查詢

如果我們需要修改或更新 MySQL 中的資料,我們可以使用 SQL UPDATE 命令來操作。.

語法

以下是 UPDATE 命令修改 MySQL 資料表資料的通用 SQL 語法:

UPDATE table_name SET field1=new-value1, field2=new-value2
[WHERE Clause]
  • 你可以同時更新一個或多個欄位。

  • 你可以在 WHERE 子句中指定任何條件。

  • 你可以在一個單獨表中同時更新資料。

當你需要更新資料表中指定行的資料時 WHERE 子句是非常有用的。


通過命令提示符更新資料

以下我們將在 SQL UPDATE 命令使用 WHERE 子句來更新 runoob_tbl 表中指定的資料:

例項

以下例項將更新資料表中 runoob_id 為 3 的 runoob_title 欄位值:

SQL UPDATE 語句:

mysql> UPDATE runoob_tbl

            SET runoob_title=`學習 C++`

            WHERE runoob_id=3;Query OK, 1

            rows affected (0.01 sec)

mysql> SELECT * from runoob_tbl

                             WHERE runoob_id=3;
+———–+————–+—————+—————–+
|
runoob_id | runoob_title |   runoob_author | submission_date |
+———–+————–+—————+—————–+
|
3         | 學習 C++   | RUNOOB.COM    | 20160506      |
+———–+————–+—————+—————–+
1

rows in set (0.01 sec)

從結果上看,runoob_id 為 3 的 runoob_title 已被修改。


使用PHP指令碼更新資料

PHP 中使用函式 mysqli_query() 來執行 SQL 語句,你可以在 SQL UPDATE 語句中使用或者不使用 WHERE 子句。

注意:不使用 WHERE 子句將資料表的全部資料進行更新,所以要慎重。

該函式與在mysql>命令提示符中執行SQL語句的效果是一樣的。

例項

以下例項將更新 runoob_id 為3的 runoob_title 欄位的資料。

MySQL UPDATE 語句測試:

<?php

$dbhost = `localhost:3306`// mysql伺服器主機地址

$dbuser = `root`;            // mysql使用者名稱

$dbpass = `123456`;          // mysql使用者名稱密碼

$conn = mysqli_connect($dbhost, $dbuser, $dbpass);

if(! $conn )

{
  

die(`連線失敗: ` . mysqli_error($conn));

}

// 設定編碼,防止中文亂碼

mysqli_query($conn , set names utf8);

$sql = `UPDATE runoob_tbl
     

 SET runoob_title=”學習 Python”
    

  WHERE runoob_id=3`;

mysqli_select_db( $conn, `RUNOOB` );

$retval = mysqli_query( $conn, $sql );if(! $retval )

{
  

die(`無法更新資料: ` .

mysqli_error($conn));

}

echo `資料更新成功!`;

mysqli_close($conn);

?>

 MySQL WHERE 子句

MySQL DELETE 語句 



筆記列表

  1.  

    update 語句可用來修改表中的資料, 簡單來說基本的使用形式為:

    update 表名稱 set 列名稱=新值 where 更新條件;

    以下是在表 students 中的例項:

    將 id 為 5 的手機號改為預設的  : update students settel=default where id=5;

    將所有人的年齡增加 1: update students set age=age+1;

    將手機號為 13288097888 的姓名改為 “小明”, 年齡改為 19: update students setname=”小明”, age=19 wheretel=”13288097888″;


  2. UPDATE替換某個欄位中的某個字元

    當我們需要將欄位中的特定字串批量修改為其他字串時,可已使用以下操作:

    UPDATE table_name SET field=REPLACE(field, `old-string`, `new-string`) 
    [WHERE Clause]

    例項:

    以下例項將更新 runoob_id 為 3 的runoob_title 欄位值的 “C++” 替換為 “Python”:

    UPDATE runoob_tbl SET runoob_title = REPLACE(runoob_title, `C++`, `Python`) where 
    runoob_id = 3;


相關文章