Mysql链接数据库的操做

$link=mysql_connect("ip","数据库名",密码);
mysql_select_db("库名",$link);
mysql_query("set names utf8");
$sql = "select id,name from brand";
$arr = mysql_query($sql); //执行sql语句

PDO链接数据库方法:php

什么是PDOmysql

PDOPHP data Object 提供了PHP操做多种数据库的统一的接口sql

PDO的特色?数据库

编码的一致行:因为PHP可用的各类数据库扩展是由不一样发行者编写的,因此尽管全部扩展都提供了基本相同的特性,却不知足编码的一致性。PDO消除了这种不一致,提供可用于各类数据库的单一接口。数组

灵活性:由于PDO在运行时加载必需的数据库驱动程序,因此不须要在每次使用不一样数据库时从新配置和从新编译PHP。例如,若是数据库须要从Oracle切换到MySQL,只要加载PDO_MYSQL驱动程序就能够了。ide

面向对象特性:PDO利用PHP5的面向对象特性,能够得到更强大、更高效的数据库通讯。性能

高性能:PDOC编写,编译为PHP,与用PHP编写的其余解决方案相比,虽然其余都相同,但提供了更高的性能。fetch

PDO的配置编码

1)修改PHP.ini , 添加MYSQLPDO扩展spa

[PHP_PDO_MYSQL]

extension=php_pdo_mysql.dll

2)扩展目录中要有相应的扩展文件

3PDO链接不一样的数据库,要有不一样的数据库驱动文件即咱们所加入配置文件的扩展

4)从新启动APACHE,使配置生效


数据源配置的格式

数据源格式:

1$dsn = 'mysql:dbname=testdb;host=127.0.0.1';

 $user = 'dbuser';

 $password = 'dbpass';

2)声明对象:

   $dbh = new PDO($dsn, $user, $password);

查询的方法,查手册

//执行添加

//$insertsql="insert into student(name,age) values('zhangsan',20)";

//if($pdo->exec($insertsql)){

//echo "添加成功";

//}

 

//总结:exec主要用于执行没有返回结果集的操做,好比insert delete update,返回的是影响的记录条数

 

//执行查询

$sql="select * from student";

$result=$pdo->query($sql);

//query()执行查询语句,返回结果集对象

//用循环利用fetch方法逐个的取出记录,返回的是关联数组和索引数组两种数组,和mysql_fetch_array()的返回结果一致

while($rows=$result->fetch()){

//print_r($rows);

}

//fetchAll()方法能够一次取出结果集中全部的数组,以二维数组的形式返回

//$data=$result->fetchAll();

//print_r($data);

//总结查询方式一

//PDO::query($sql),利用PDO来执行sql语句

//PDOstatement::fetch()或者PDOstatement::fetch()来取结果集的数据



//查询方式二

//PDO::prepare($sql),利用PDO来预执行sql语句

//PDOstatement::execute() 执行预处理

//PDOstatement::fetch()或者PDOstatement::fetch()来取结果集的数据

$res=$pdo->prepare($sql);//预处理

if($res->execute()){//执行预处理

$array=$res->fetchAll();

}

print_r($array);

 

//总结三

//PDO::lastInsertId():是返回上次插入操做,主键列类型是自增的最后的自增ID

    //PDOStatement::rowCount() :主要是用于PDO::query()PDO::prepare()进行DELETEINSERTUPDATE操做影响的结果集,对PDO::exec()方法和SELECT操做无效。



TP支持PDO

return array(  

‘DB_TYPE’=> ‘pdo’,  

// 注意DSN的配置针对不一样的数据库有所区别 请参考PHP手册PDO类库部分  

‘DB_DSN’=> ‘mysql:host=localhost;dbname=think’,  

‘DB_USER’=>’root’,  

‘DB_PWD’=>”,  

‘DB_PREFIX’=>’think_’,  

// 其余项目配置参数………  

    ); 

相关文章
相关标签/搜索