php 中curd表达啥,CURD语句的基本语法和PDO中操作数据表的基本步骤实例演示增删改查命令 2019年07月24日 23时10分...
一、常用的CUR
最常用的就是: `CURD` 增刪改查? ?它代表創建(Create)、更新(Update)、讀取(Read)和刪除(Delete)操作。
新增操作語法
* SQL規范: `INSERT INTO `數據表` (`字段1`,`字段2`...) VALUES ('值1','值2'...)`
* 優點: 通用規范, 移植性好, 可同時插入多條記錄
* 缺點: 字段與值的順序必須一一對應, 容易出現拼寫錯誤
* MySQL擴展: `INSERT INTO `數據表` SET `字段1`='值1', `字段2`='值2'... `
* 優點: 語法簡潔優雅, 執行效率是傳統語法的3倍以上
* 缺點: 只適用于`MySQL`數據庫, 移植性差,并且不支持同時插入多條記錄
> Tips: 語句中的 `INTO` 可以省略, 主鍵可忽略賦值,如果賦值必須是為`NULL`
* 舉例: `INSERT `category` (`email`,`password`) VALUES ('admin@php.cn','123');`
以上三種方式,都使用過,均可使用。
刪除操作語法
* `DELETE FROM `數據表`? WHERE? 刪除條件`
* 與更新一樣, 不能省略刪除條件
更新操作語法
* `UPDATE `數據表` SET `字段1`='值1', `字段2`='值2'... WHERE ?更新條件`
* 不要無條件更新
> `INSERT / UPDATE / DELETE`: 都是寫操作, 會影響到當前數據表中的記錄內容,返回受影響的記錄數量
查詢操作語法
* `SELECT `字段列表` FROM `數據表名` WHERE 查詢條件`
* 結果集控制: `ORDER BY`排序, `GROUP BY`分組, `LIMIT`限制數量...
* 舉例: `SELECT * FROM `user` WHERE `id` > 10 LIMIT 5`
* 查詢語句是最靈活,也是最常用的功能, 日常80%以上操作與查詢相關
* 查詢不會影響到表中數據, 返回結果集
二、PDO中操作數據表的基本步驟
PHP數據對象(PDO),擴展為PHP訪問數據庫定義了一個輕量級的一致借口
PDO提供了一個數據訪問抽象層,這意味著,不管使用哪種數據庫,都可以用相同的函數來查詢和獲取數據
PDO操作步驟分三步:
第一步:連接數據庫 :? ? ? ? $pdo = new PDO($dsn,$user,$pass)
第二步:執行SQL語句:? ? ? INSERT/DELETE/UPDATE/SELECT
第三步:關閉連接【可選】:? $pdo = null; //unset($pdo); 等價
三、實例演示insert/update/delete/select用法
操作前,先配置數據庫
database.php<?php
return?[
'type'?=>?'mysql',
'host'?=>?'localhost',
'dbname'?=>?'php',
'username'?=>'root',
'password'?=>?'root'
];
connect.php<?php
//引入連接數據文件
$db?=?require?'database.php';
//配置數據源DSN信息
$dsn?=?"{$db['type']}:host={$db['host']};dbname={$db['dbname']}";
//連接數據庫
try{
$pdo?=?new?PDO($dsn,$db['username'],$db['password']);
//????echo?"success";
}catch(PDOException?$e){
die('loser'.$e->getMessage());
}
操作案例如下:
delete.php代碼<?php
//?刪除記錄?功能:刪除cate_id等于8的記錄
//1.連接數據庫
require?__DIR__.'/inc/connect.php';
//2.創建預處理對象
$stmt?=?$pdo->prepare('DELETE?FROM?`category`?WHERE?`cate_id`=:cate_id');
//3.執行SQL語句,cate_id等于8的記錄
$stmt->execute(['cate_id'=>8]);
echo?'成功刪除'.$stmt->rowCount().'條記錄';
4.關閉連接
$pdo?=?null;
本地運行截圖:
update.php<?php
//?更新記錄?功能:將cate_id?等于6的name值改為xjj,alias值改為小姐姐
//基本語法
//*?`UPDATE?`數據表`?SET?`字段1`='值1',?`字段2`='值2'...?WHERE??更新條件`
//*?不要無條件更新
//1.連接數據庫
require?__DIR__.'/inc/connect.php';
//2.創建預處理對象
$stmt?=?$pdo->prepare('UPDATE?`category`?SET?`name`=?:name,`alias`=?:alias?WHERE?`cate_id`=:cate_id');
//3.執行SQL語句,更新cate_id?等于6的name值改為xjj,alias值改為小姐姐
$stmt->execute(['name'?=>?'xjj','alias'?=>?'小姐姐','cate_id'=>6]);
echo?'成功更新'.$stmt->rowCount().'條記錄';
4.關閉連接
$pdo?=?null;//unset($pdo);等價
本地運行截圖:
insert.php<?php
//新增記錄?功能:增加一條記錄,name為yhhp,alias為用戶好評
//1.連接數據庫
require?__DIR__.'/inc/connect.php';
//2.創建預處理對象
$stmt?=?$pdo->prepare('INSERT?INTO?`category`?SET?`name`=?:name,`alias`=?:alias');
//3.執行SQL語句
$stmt->execute(['name'?=>?'yhhp','alias'?=>?'用戶好評']);
echo?'成功添加'.$stmt->rowCount().'條記錄,該記錄的主鍵id是:'.$pdo->lastInsertId();
4.關閉連接
$pdo?=?null;//unset($pdo);等價
本地運行截圖:
select.php<?php
//查詢操作??功能:查詢cate_id等于2的所有數據
//查詢操作基本語法
//*?`SELECT?`字段列表`?FROM?`數據表名`?WHERE?查詢條件`
//*?結果集控制:?`ORDER?BY`排序,?`GROUP?BY`分組,?`LIMIT`限制數量...
//*?舉例:?`SELECT?*?FROM?`user`?WHERE?`id`?>?10?LIMIT?5`
//*?查詢語句是最靈活,也是最常用的功能,?日常80%以上操作與查詢相關
//*?查詢不會影響到表中數據,?返回結果集
//1.連接數據庫
require?__DIR__.'/inc/connect.php';
//2.創建預處理對象
$stmt?=?$pdo->prepare('SELECT?*?FROM?`movies`??WHERE?`cate_id`=:cate_id');
//3.執行SQL語句
$stmt->execute(['cate_id'=>2]);
//遍歷
//查詢方法1,追條方式獲取
//while()
//PDO::FETCH_ASSOC:獲取模式,功能:只獲關聯部分數據,沒有取索引部分數據
while?($movie?=$stmt->fetch(PDO::FETCH_ASSOC)?)
{
echo?'
'.print_r($movie,true);}
//查詢方法2,多條方式獲取,耗內存
//foreach()
//$movies?=?$stmt->fetchAll(PDO::FETCH_ASSOC);
//foreach?($movies?as?$movie){
//????echo?'
'.print_r($movie,true);//}
4.關閉連接
//$pdo?=?null;//unset($pdo);等價
本地運行截圖:
總結
* 最常用的就是: `CURD` 增刪改查
* `SQL`語句編寫規范
* 關鍵字全部大寫: `SELECT / INSERT / DELETE / UPDATE ...`
* 表名與字段名使用反引號定界符: 表名`user`, 字段名`email`
* 具體值,有類型與長度等屬性
總結
以上是生活随笔為你收集整理的php 中curd表达啥,CURD语句的基本语法和PDO中操作数据表的基本步骤实例演示增删改查命令 2019年07月24日 23时10分...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: php 安装pdo odbc,关于PHP
- 下一篇: java框架缓存,缓存框架(Java缓存