>  기사  >  백엔드 개발  >  PHP는 pdo를 사용하여 액세스 데이터베이스에 연결하고 루프에서 데이터 작업을 표시합니다.

PHP는 pdo를 사용하여 액세스 데이터베이스에 연결하고 루프에서 데이터 작업을 표시합니다.

不言
不言원래의
2018-06-05 16:38:341833검색

이 글에서는 주로 pdo를 사용하여 access 데이터베이스에 연결하고 데이터를 루프로 표시하는 PHP 작업을 소개합니다. pdo를 사용하여 access 데이터베이스에 연결하고 쿼리하고 SQL 문을 실행하는 작업 기술과 주의 사항을 자세히 분석합니다. 예제를 기반으로 PHP에서 전처리 및 기타 관련 작업을 참조할 수 있습니다.

이 문서에서는 pdo를 사용하여 액세스 데이터베이스에 연결하고 데이터를 루프로 표시하는 PHP의 예제를 설명합니다. 참고용으로 모든 사람과 공유하세요. 세부 사항은 다음과 같습니다.

try {
$conn = new PDO("odbc:driver={microsoft access driver (*.mdb)};
       dbq=".realpath("MyDatabase.mdb"))
       or die("链接错误!");
//echo "链接成功!";
}
catch(PDOException $e){
  echo $e->getMessage();
}
$sql = "select * from users";

1 foreach() 메서드

foreach()方法

foreach ($conn->query($sql) as $row) {
$row["UserID"];
$row["UserName"];
$row["UserPassword"];
}

2. while()方法

$rs = $conn->query($sql);
$rs->setFetchMode(PDO::FETCH_NUM);
while($row=$rs->fetch()){
$row[0];
$row[1];
$row[2];
}

php使用PDO抽象层获取查询结果,主要有三种方式:

(1)PDO::query()查询。

看下面这段php代码:

<?php
//PDO::query()查询
$res = $db->query(&#39;select * from user&#39;);
$res->setFetchMode(PDO::FETCH_NUM); //数字索引方式
while ($row = $res->fetch()){
print_r($row);
}
?>

(2)PDO->exec()处理sql

<?php
//PDO->exec()处理sql
$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$res = $db->exec("insert into user(id,name) values(&#39;&#39;,&#39;php点点通&#39;)");
echo $res;
?>

(3)PDO::prepare()预处理执行查询

<?php
//PDO::prepare()预处理执行查询
$res = $db->prepare("select * from user");
$res->execute();
while ($row = $res->fetchAll()) {
print_r($row);
}
?>

setAttribute() 方法是设置属性,常用参数如下:

PDO::CASE_LOWER -- 强制列名是小写
PDO::CASE_NATURAL -- 列名按照原始的方式
PDO::CASE_UPPER -- 强制列名为大写

setFetchMode方法来设置获取结果集的返回值的类型,常用参数如下:

PDO::FETCH_ASSOC -- 关联数组形式
PDO::FETCH_NUM -- 数字索引数组形式
PDO::FETCH_BOTH -- 两者数组形式都有,这是默认的
PDO::FETCH_OBJ -- 按照对象的形式,类似于以前的 mysql_fetch_object()

对上面总结如下:

查询操作主要是PDO::query()PDO::exec()PDO::prepare()

PDO->query() — 处理一条SQL语句,并返回一个“PDOStatement”
PDO->exec() — 处理一条SQL语句,并返回所影响的条目数
PDO::prepare()主要是预处理操作,需要通过$rs->execute()来执行预处理里面的SQL语句

最后介绍两个常用的函数:

(1)fetchColumn()获取指定记录里一个字段结果,默认是第一个字段!

<?php
$res = $db->query(&#39;select * from user&#39;);
//获取指定记录里第二个字段结果
$col = $res->fetchColumn(1);
echo $col;
?>

(2)fetchAll()

<?php
$res = $db->query(&#39;select * from user&#39;);
$res_arr =$res->fetchAll();
print_r($res_arr);
?>

2. while ()Method

rrreee

php는 PDO 추상화 계층을 사용하여 쿼리 결과를 얻는 세 가지 주요 방법이 있습니다:

(1) PDO::query()쿼리.
다음 PHP 코드를 보세요:

rrreee

(2) PDO->exec()가 sql

rrreee

을 처리합니다. (3) PDO: :prepare() 전처리 실행 쿼리 🎜🎜🎜rrreee🎜🎜🎜setAttribute() 공통 매개변수는 다음과 같습니다. 🎜🎜PDO::CASE_LOWER🎜 -- 열 이름을 소문자로 강제 적용🎜PDO::CASE_NATURAL🎜 -- 열 이름은 원래 방식입니다🎜 PDO::CASE_UPPER🎜 -- 열 이름을 대문자로 강제 지정🎜🎜setFetchMode 결과 집합을 가져오기 위한 반환 값 유형을 설정하는 메서드. 공통 매개변수는 다음과 같습니다. 🎜🎜 PDO::FETCH_ASSOC🎜 -- 연관 배열 형식🎜PDO::FETCH_NUM🎜 -- 숫자 인덱스 배열 형식🎜PDO::FETCH_BOTH 🎜 -- 두 가지 배열 형식을 모두 사용할 수 있으며 이는 기본값입니다. 🎜PDO::FETCH_OBJ🎜 -- 개체 형식에 따르면 다음과 유사합니다. 이전 mysql_fetch_object()🎜🎜 위 내용을 요약하면 다음과 같습니다. 🎜🎜Query 작업은 주로 PDO::query(), PDO::exec(), >PDO::prepare(). 🎜🎜PDO->query()🎜 — SQL 문을 처리하고 "PDOStatement"를 반환합니다. 🎜PDO->exec( )🎜 — SQL 문을 처리하고 영향을 받은 항목 수를 반환합니다.🎜PDO::prepare() 주로 전처리 작업이며 $rs->execute()를 통해 수행해야 합니다. SQL 🎜🎜내부 명령문은 마지막으로 일반적으로 사용되는 두 가지 함수를 소개합니다: 🎜🎜 (1) fetchColumn() 지정된 레코드의 필드 결과를 가져옵니다. 기본값은 첫 번째 필드입니다. ! 🎜🎜🎜rrreee🎜🎜🎜 (2) fetchAll(), 결과 집합에서 데이터를 가져온 다음 연관 배열에 저장합니다. 🎜🎜🎜rrreee🎜🎜🎜🎜🎜관련 권장 사항: 🎜🎜 🎜PHP ADODB는 HTML 테이블 함수 rs2html 함수를 생성합니다 [오류 처리 함수 사용] 🎜🎜🎜🎜🎜PHP는 정규 표현식을 사용하여 필터링 불법 문자열 함수 예제를 구현합니다. 🎜🎜🎜🎜🎜🎜🎜🎜🎜

위 내용은 PHP는 pdo를 사용하여 액세스 데이터베이스에 연결하고 루프에서 데이터 작업을 표시합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.