在做mysql与PHP交互的时候我们需要对mysql里面的数据进行增删改查,由于直接用mysql进行增删改查的话语法比较繁琐,看起来结构比较乱,所以我们可以用PDO进行代替,并且非常好操作,下面我就列举一下PDO对MySql的操作过程。
查找操作
1.查找user里面的name列和password列
$pdo = new PDO('mysql:dbname=test; charset=UTF8','root');
$stat = $pdo->prepare('select name, password from user');
$stat->execute();
$users = $stat->fetchAll(PDO::FETCH_OBJ);
var_dump($users);
这里需要注意几个问题,在new PDO这个里面mysql 代表我使用的是mysql数据库,dbname代表的的数据名为test,charset=UTF8我设置的字符,然后root代表我的数据库密码。
在
$pdo->prepare这个里面是我对数据库的操作,这里是操作数据库的核心代码。
$stat->execute()这句代码的我们理解为准备就行了。
$stat->fetchAll(PDO::FETCH_OBJ)这个里面的$stat->fetchAll( )表示查找全部,意思是有多项name和password的时候我们将它全部输出。当然你有需求只对一组进行输出那么你就用$stat->fetch( )就行了。
2.查找指定的列
$pdo = new PDO('mysql:dbname=test; charset=UTF8','root');
$stat = $pdo->prepare("select name from user where name= :name");
$stat->execute(array('name'=>$name));
$users = $stat->fetchAll(PDO::FETCH_NAMED);
插入操作
$pdo = new PDO('mysql:dbname=test; charset=UTF8','root');
$stat = $pdo->prepare("insert into user(name, password) values(:name, :password)");
$flag = $stat->execute(array('name'=>$name, 'password'=>$password));
修改操作
$pdo = new PDO('mysql:dbname=test; charset=UTF8','root');
$stat = $pdo->prepare("update user set password = :password where name = :name");
$flag = $stat->execute(array('name'=>$name, 'password'=>$password));
删除操作
$pdo = new PDO('mysql:dbname=test; charset=UTF8','root');
$stat = $pdo->prepare("delete from user where name = :name");
$flag = $stat->execute(array('name'=>$name));
注意,只有查看需要fetchAll或fetch语句,其他的都不需要使用。