Mysql连接数据库的操作

本文涉及的产品
云数据库 RDS SQL Server,独享型 2核4GB
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
简介: Mysql连接数据库的操作 1 2 3 4 5 $link=mysql_connect("ip","数据库名",密码); mysql_select_db("库名",$link); mysql_query("set names utf8"); $sql = "selec.

Mysql连接数据库的操作


1
2
3
4
5
$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连接数据库方法:

什么是PDO

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

PDO的特点?

编码的一致行:由于PHP可用的各种数据库扩展是由不同发行者编写的,所以尽管所有扩展都提供了基本相同的特性,却不满足编码的一致性。PDO消除了这种不一致,提供可用于各种数据库的单一接口。

灵活性:因为PDO在运行时加载必需的数据库驱动程序,所以不需要在每次使用不同数据库时重新配置和重新编译PHP。例如,如果数据库需要从Oracle切换到MySQL,只要加载PDO_MYSQL驱动程序就可以了。

面向对象特性:PDO利用PHP5的面向对象特性,可以获得更强大、更高效的数据库通信。

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

PDO的配置

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

[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_’,  

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

    ); 






      本文转自噼里啪啦啦 51CTO博客,原文链接:http://blog.51cto.com/pilipala/1670591 ,如需转载请自行联系原作者
相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
1天前
|
关系型数据库 MySQL 数据库
Mysql基础第三十二天,数据库维护
Mysql基础第三十二天,数据库维护
9 0
|
1天前
|
SQL 关系型数据库 MySQL
Mysql基础第三天,创建罗斯文数据库
Mysql基础第三天,创建罗斯文数据库
12 0
Mysql基础第三天,创建罗斯文数据库
|
1天前
|
SQL 存储 关系型数据库
【MySQL 数据库】11、学习 MySQL 中的【锁】
【MySQL 数据库】11、学习 MySQL 中的【锁】
14 0
|
1天前
|
存储 SQL 关系型数据库
【MySQL 数据库】10、MySQL 的触发器
【MySQL 数据库】10、MySQL 的触发器
7 0
|
1天前
|
存储 SQL 关系型数据库
【MySQL 数据库】9、存储过程
【MySQL 数据库】9、存储过程
19 0
|
1天前
|
关系型数据库 MySQL 程序员
【MySQL 数据库】8、视图
【MySQL 数据库】8、视图
15 0
|
1天前
|
SQL 关系型数据库 MySQL
【MySQL 数据库】7、SQL 优化
【MySQL 数据库】7、SQL 优化
10 0
|
1天前
|
存储 SQL 关系型数据库
【MySQL 数据库】6、一篇文章学习【索引知识】,提高大数据量的查询效率【文末送书】
【MySQL 数据库】6、一篇文章学习【索引知识】,提高大数据量的查询效率【文末送书】
30 0
|
1天前
|
存储 关系型数据库 MySQL
【MySQL 数据库】5、存储引擎
【MySQL 数据库】5、存储引擎
9 0
|
1天前
|
SQL 关系型数据库 MySQL
【MySQL 数据库】4、MySQL 事务学习
【MySQL 数据库】4、MySQL 事务学习
12 0