PHP数据库查询
Posted xiaoyi9812
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PHP数据库查询相关的知识,希望对你有一定的参考价值。
php数据库查询
在Web开发中,数据库查询是非常常见的操作。PHP提供了很多常用的数据库查询函数,下面对其中的五个函数进行详细解释。
1. PDO
使用PDO
连接mysql数据库。
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "mydatabase";
try
$conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
echo "连接成功";
catch(PDOException $e)
echo "连接失败: " . $e->getMessage();
在上面的例子中,我们连接了一个名为mydatabase
的MySQL数据库。
2. prepared statement
使用prepared statement执行一条SQL语句。
$sql = "SELECT * FROM mytable WHERE id=:id";
$stmt = $conn->prepare($sql);
$stmt->bindParam(':id', $id);
$stmt->execute();
while ($row = $stmt->fetch())
echo "id: " . $row["id"] . " - Name: " . $row["name"] . "
";
在上面的例子中,我们执行了一条SELECT
语句,并将结果打印到页面上。
3. fetch()
使用fetch()
方法从查询结果集中获取一行数据。
while ($row = $stmt->fetch())
echo "id: " . $row["id"] . " - Name: " . $row["name"] . "
";
在上面的例子中,我们从查询结果集中获取了一行数据,并将其打印到页面上。
4. closeCursor()
使用closeCursor()
方法关闭游标,释放与查询结果集相关的资源。
$stmt->closeCursor();
在上面的例子中,我们关闭了游标,释放了与查询结果集相关的资源。
5. try-catch
使用try-catch
块捕获SQL语句执行产生的错误信息。
try
$stmt->execute();
catch (PDOException $e)
echo "查询失败: " . $e->getMessage();
在上面的例子中,我们使用try-catch
块捕获SQL语句执行产生的错误信息,并将其打印到页面上。
除了上述这些函数外,PHP还提供了其他相关的数据库操作函数。例如,rowCount()
方法可以用来获取查询结果集中的行数,beginTransaction()、commit() 和 rollback()
方法可以用来实现事务等等。
总的来说,PHP数据库查询是Web开发中非常常见的一部分。掌握这些数据库查询函数可以让我们更好地查询和处理数据库,使我们的Web应用程序更加强大和稳定。
另外,在Web开发中,还有许多其他与数据库操作相关的技术和工具,例如ORM框架、数据迁移和数据库设计等等。这些功能都可以通过PHP和其他相关技术来实现。希望这篇文章能够对您有所帮助。
php实现查询数据库数据,每次限定1000条
参考技术A $mysqliObj = new mysqli("数据库服务器", "数据库用户","数据库表名", "数据库明");//字符集
$mysqliObj->query("set names utf8");
$result = $mysqliObj->query("select * from 表名 limit 1000");
$data=array();
while(@$row=$result->fetch_array())
$data[]=$row;
追问
如果数据有100000条,应该怎么循环呢?
追答//select * from 表名 limit 0,1000;
//select * from 表名 limit $i,$j;$i是表示从第几条开始取$j表示取几条
$mysqliObj = new mysqli("数据库服务器", "数据库用户","数据库表名", "数据库明");
//字符集
$mysqliObj->query("set names utf8");
$data=array();
for($i=0;$query("select * from 表名 limit $i*1000,1000");
while(@$row=$result->fetch_array())
$data[]=$row;
print_r($data);
//for($i=0;$<1000,$i++ )
//select * from 表名 limit $i*1000,1000;
//
代码如下:
$sql="SELECT COUNT(*) AS count FROM TABLE
WHERE id='$id'";
$result=mysql_fetch_array(mysql_query($sql));
$count=$result['count'];
第二种方法:先取出,后统计
代码如下:
$sql="SELECT * FROM TABLE WHERE id='$id'";
$result=mysql_fetch_array(mysql_query($sql));
$count=count($result);//或者$count=mysql_num_rows($result);追问
非常感谢,就是如果大约一张表有100000条数据,每次查询1000条,循环查询完整张表存入数组,该怎么做?
以上是关于PHP数据库查询的主要内容,如果未能解决你的问题,请参考以下文章