MySQL UPDATE 查詢
如果我們需要修改或更新 MySQL 中的數(shù)據(jù)寻拂,我們可以使用 SQL UPDATE 命令來操作彪杉。
語法
以下是 UPDATE 命令修改 MySQL 數(shù)據(jù)表數(shù)據(jù)的通用 SQL 語法:
UPDATE table_name SET field1=new-value1, field2=new-value2
[WHERE Clause]
- 你可以同時(shí)更新一個(gè)或多個(gè)字段执虹。
- 你可以在 WHERE 子句中指定任何條件廓啊。
- 你可以在一個(gè)單獨(dú)表中同時(shí)更新數(shù)據(jù)习霹。
當(dāng)你需要更新數(shù)據(jù)表中指定行的數(shù)據(jù)時(shí) WHERE 子句是非常有用的暇屋。
通過命令提示符更新數(shù)據(jù)
以下我們將在 SQL UPDATE 命令使用 WHERE 子句來更新 mydb_jianshu 表中指定的數(shù)據(jù):
實(shí)例
以下實(shí)例將更新數(shù)據(jù)表中 jianshu_id 為 3 的 jianshu_author 字段值:
mysql> update mydb_jianshu set jianshu_author='Fangdm' where jianshu_id=3;
Query OK, 1 row affected (0.09 sec)
Rows matched: 1 Changed: 1 Warnings: 0
mysql> select * from mydb_jianshu where jianshu_id=3;
+------------+---------------+----------------+-----------------+
| jianshu_id | jianshu_title | jianshu_author | submission_date |
+------------+---------------+----------------+-----------------+
| 3 | MySQL基礎(chǔ) | Fangdm | 2018-02-09 |
+------------+---------------+----------------+-----------------+
1 row in set (0.00 sec)
mysql>
從結(jié)果上看锦茁,jianshu_id 為 3 的 jianshu_author 已被修改攘轩。
使用PHP腳本更新數(shù)據(jù)
PHP 腳本執(zhí)行 SQL 語句時(shí),你可以在 SQL UPDATE 語句中使用或者不使用 WHERE 子句码俩。
注意:不使用 WHERE 子句將數(shù)據(jù)表的全部數(shù)據(jù)進(jìn)行更新度帮,所以要慎重。
實(shí)例
以下實(shí)例將更新 jianshu_id 為 2 的 jianshu_author 字段的數(shù)據(jù)稿存。
<?php
$dbname = 'mydb';
$servername = 'localhost';
$username = 'root';
$password = '';
try {
$conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
// 設(shè)置 PDO 錯(cuò)誤模式為異常
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$sql = "update mydb_jianshu set jianshu_author='Fangdm' where jianshu_id=2;";
//使用 exec() 笨篷,因?yàn)闆]有結(jié)果返回
$conn->exec($sql);
echo "更新成功。";
} catch (PDOException $e) {
echo $sql . "<br>" . $e->getMessage();
}
$conn = null;
?>
查看結(jié)果:
mysql> select * from mydb_jianshu where jianshu_id=2;
+------------+----------------------------+----------------+-----------------+
| jianshu_id | jianshu_title | jianshu_author | submission_date |
+------------+----------------------------+----------------+-----------------+
| 2 | 學(xué)習(xí)網(wǎng)絡(luò)安全從0到1 | Fangdm | 2018-02-09 |
+------------+----------------------------+----------------+-----------------+
1 row in set (0.00 sec)
mysql>
一起學(xué)習(xí)一起進(jìn)步瓣履,寫的不好見諒率翅。