PHP中的数据库操作

PDO

  • project data object
  • 连接到数据库
 $db=new PDO("mysql:dbname=database;host=sever","username","password")
 example:
  $db=new PDO("mysql:dbname=imdb;host=localhost","root","sesame")
  • 执行查询
PDO方法 描述
query (sqI) 查询数据库,返回匹配行(SELECT)
exec (sql) 修改数据库,返回受影响的行数
getAttribute(n) , setAttribute (n) 获取或者设置数据库连接的各种属性
quote (str) 处理过转义字符,生成可用于SQL查询的字符串
errorCode 0, errorInfo0 获取当前数据库错误的方法
beginTransartion() , commit() , inTransaction , rollBack() 数据库事务处理方法
prepare (sql) 产生一条SQL预处理语句
1.查询
$db = new PDO("mysql:dbname=imdb","root","sesame");
$row = $db->query("SELECT name FROM movies WHERE name LIKE '%oo%'");
$row = $db->query("SELECT name FROM movies WHERE name='$title'");
2.删除
$db->exec("DELETE FROM movies WHERE year=1999");
3.插入
$db->exec("INSERT INTO actors(id,first_name,last_name)VALUES(15241,'Jenifer',Auster)");

避免SQL注入

  • quote
<?php
$db = new PDO("mysql:dbname=imdb","root","sesame");
$title = $db->quote($_GET["movietitle"]);
$rows = $db->query("SELECT year FROM movies WHERE name=$title;");
?>

PDOSatement方法

  • PDO查询方法返回的类型为PDOStatement的对象,可以用foreach遍历
方法 描述
columnCount() 结果中返回的列数
fetch() 从结果返回下一行
fetchColumn(number) 从结果返回下一列
rowCount() 查询返回的行数

猜你喜欢

转载自blog.csdn.net/weixin_45551083/article/details/104391969