php连接mysql的连接函数,php与mysql基础教程
大家好,感谢邀请,今天来为大家分享一下php连接mysql的连接函数的问题,以及和php与mysql基础教程的一些困惑,大家要是还不太明白的话,也没有关系,因为接下来将为大家分享,希望可以帮助到大家,解决大家的问题,下面就开始吧!
php如何链接mysql
在能够访问并处理数据库中的数据之前,必须创建到达数据库的连接。
在 PHP中,这个任务通过 mysql_connect()函数完成。
工具原料:电脑+php+mysql
php链接mysql的方法如下:
方法一、
先做出如下假设(也适用与方法二和方法三)
$username=your_name;
$userpass=your_pass;
$dbhost=localhost;
$dbdatabase=your_database;
//生成一个连接
$db_connect=mysql_connect($dbhost,$username,$userpass) or die("Unable to connect to the MySQL!");
//选择一个需要操作的数据库
mysql_select_db($dbdatabase,$db_connect);
//执行MySQL语句
$result=mysql_query("SELECT id,name FROM user");
//提取数据
$row=mysql_fetch_row($result);
注意事项:代码注释已经说明了一切。不过这里还需要做一些补充。
①在mysql_connect()、mysql_select_db()等函数之前使用@(错误控制运算符),可以忽略掉系统产生的错误信息,然后用die()来自定义错误信息;
②提取数据的时候,除了上面的mysql_fetch_row,常见的还有mysql_fetch_assoc和mysql_fetch_array,具体差别请查阅PHP Manual;
③对于mysql_query()函数的返回值,如果执行的语句有返回值(如SELECT、SHOW、DESCRIBE等),则返回相应数据(成功时)或FALSE(失败时);如果执行的语句没有返回值(如DELETE、DROP、INSERT、UPDATE等),则返回TRUE(成功时)或FALSE(失败时)。
方法二、面向对象
其实这种方法和普通方法非常类似,只是把相应的函数换成了面向对象方法,直接看代码。
$db=new mysqli($dbhost,$username,$userpass,$dbdatabase);
if(mysqli_connect_error()){
echo'Could not connect to database.';
exit;
}
$result=$db->query("SELECT id,name FROM user");
$row=$result->fetch_row();
这里用到的是mysqli,意思就是mysql的扩展,既可以通过面向过程的方式也可以通过面向对象的方式与数据库进行交互,唯一不同的是调用函数(对象方法)的方式不一样。
方法三、PDO方法
PDO其实是PHP Database Objects的缩写,中文即PHP数据库对象。它提供了一种统一的PHP与数据库交互的方法。
这是目前流行的一种连接数据库的方法。它的优势在于:只要正确提供数据源,余下对于数据库的基本操作都是一样的。也就是说,同一段代码既可以同MySQL交互,也可以和SQLite3交互,当然也可以和PostgreSQL进行交互,前提是你提供了正确的数据源。下面看一下连接MySQL的代码:
$dsn='mysql:host='.$dbhost.';dbname='.$dbdatabase.';'
$dbh=new PDO($dsn,$username,$userpass);
如果是SQLite3,直接使用下面的代码:
$dsn='sqlite3:"C:\sqlite\user.db"';
$dbh=new PDO($dsn);
如果是PostgreSQL,下面的代码能够对付:
$dsn='pgsql:host='.$dbhost.' port=5432 dbname='.$dbdatabase.' user='.$username.' password='.$userpass;
$dbh=new PDO($dsn);
跟数据库成功建立连接之后,下面就只需要从数据库获取数据或插入更新数据,实例代码如下:
$stmt=$dbh->query('SELECT id,name FROM user');
$row=$stmt->fetch();
综上所述有三种方法链接mysql
如何通过php实现mysql数据库连接
php链接mysql必备条件:
已安装mysql数据库;
检查php环境是否已开启mysql扩展(一般情况下是开启的);
检查方法:a.使用phpinfo();函数,看有没有mysql项;b.打开php.ini文件,检查php_mysql.dll前分号是否已取掉。
php链接代码如下:
4
<?php//设置编码格式header("Content-type:text/html;charset=utf-8");//定义数据库主机地址$host="localhost";//定义mysql数据库登录用户名$user="root";//定义mysql数据库登录密码$pwd="";//链接数据库$conn=mysql_connect($host,$user,$pwd);//对连接进行判断if(!$conn){die("数据库连接失败!".mysql_errno());}else{echo"数据库连接成功!";}?>
运行结果:
怎样用PHP连接sql数据库
1、学习的方法,最好是看手册
在前一篇文章中涉及到了连接数据库sqlsrv_connect();还记得我们mysql连接数据库的时候也是mysql_connect();两者操作数据库是很相似的。从零基础开始学起的话,只能是查阅手册。查看一下sqlsrv有哪些函数提供我们使用!推荐网址是:
【注意】很多的方法都跟mysql提供的方法很相似,看到后面的函数名就大概知道里面的用法,比如说mysql执行sql语句的时候调用mysql_query();而sqlserver执行sql语句的时候调用也是sqlsrv_query(),但是特别注意一点就是,它们的传递参数不一样。详细的只能看一下手册。接下来我简单总结一下操作数据的方法
2、连接数据库sqlsrv_connect()
<?php$serverName="serverName\sqlexpress";//服务器的名字,本地localhost$connectionInfo= array("Database"=>"dbName","UID"=>"userName","PWD"=>"password");$conn= sqlsrv_connect($serverName,$connectionInfo);if($conn){ echo"Connection established.<br/>";
}else{ echo"Connection could not be established.<br/>"; die( print_r( sqlsrv_errors(), true));
}
3、操作数据库
1)执行sql语句sqlsrv_query(),返回值为true或者false,这里函数的用法跟mysql_query(),不一样。它需要把连接的资源句柄当作参数传进去,看源码。资源句柄就是上面代码连接数据库的“$conn”。
$sql="select* from test1";//sql语句$data= sqlsrv_query($conn,$sql);//$conn资源句柄if($data== true){ die("执行成功");
}else{ die("执行失败");
}
2)获取结果集
//以数值索引数组、关联数组或这两种数组的形式检索下一行的数据。类似于mysql_fetch_arraysqlsrv_fetch_array
//以对象形式检索下一行的数据。sqlsrv_fetch_object 1234
$sql="select* from test1";$data= sqlsrv_query($conn,$sql);if($data== true){ while($row= sqlsrv_fetch_array($data, SQLSRV_FETCH_ASSOC)){ echo$row['id'].",".$row['name']."<br/>";
}else{ die( print_r( sqlsrv_errors(), true));
}
}
$sql="SELECT fName, lName FROM Table_1";$stmt= sqlsrv_query($conn,$sql);if($stmt=== false){ die( print_r( sqlsrv_errors(), true));
}while($obj= sqlsrv_fetch_object($stmt)){ echo$obj->fName.",".$obj->lName."<br/>";
}
3)显示错误信息sqlsrv_errors():上面都有用到这个函数,只要是操作数据库发生错误,都可以使用这个函数打印出来看一下压
这里就不用上代码了
php连接mysql的连接函数和php与mysql基础教程的问题分享结束啦,以上的文章解决了您的问题吗?欢迎您下次再来哦!