假设MySQL数据库安装在本地服务器上,数据库名称是data,数据库在默认端口上运行,用户名是root,密码是123456,数据库中有名为student的表,表中有name和sex两个字段,请编写代码使用PDO取出student表中的性别字段sex为“男”所有记录。输出格式:name-sex
时间: 2024-02-26 22:57:31 浏览: 82
好的,以下是使用PHP和PDO连接MySQL数据库,并取出性别为“男”的student表记录的代码:
```php
<?php
$host = "localhost";
$dbname = "data";
$username = "root";
$password = "123456";
$dsn = "mysql:host=$host;dbname=$dbname;charset=utf8mb4";
try {
$pdo = new PDO($dsn, $username, $password);
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$sql = "SELECT name, sex FROM student WHERE sex = '男'";
$stmt = $pdo->prepare($sql);
$stmt->execute();
while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
echo $row['name'] . "-" . $row['sex'] . "<br>";
}
} catch (PDOException $e) {
echo "Error: " . $e->getMessage();
}
?>
```
解释一下代码:
- 第1行到第5行定义了连接MySQL数据库的相关信息;
- 第7行到第14行是连接数据库的代码,使用PDO连接MySQL数据库,并设置错误模式为抛出异常;
- 第16行到第18行是SQL语句,用于查询性别为“男”的student表记录;
- 第19行使用PDO的prepare方法,将SQL语句编译为可执行的语句,并返回一个PDOStatement对象;
- 第20行执行SQL语句,得到一个PDOStatement对象;
- 第22行到第26行是遍历PDOStatement对象的结果集,输出每一条记录的name和sex字段。
希望能够解决你的问题,如果还有其他问题,请继续提出。
阅读全文