PHP PDO
PDO(PHP 데이터 개체) 확장은 PHP가 데이터베이스에 액세스할 수 있는 가볍고 일관된 인터페이스를 정의합니다.
PDO는 데이터 액세스 추상화 계층을 제공합니다. 즉, 어떤 데이터베이스를 사용하든 동일한 기능(메서드)을 사용하여 데이터를 쿼리하고 얻을 수 있습니다.
PDO는 PHP5.1과 함께 출시되었으며 PHP5.0의 PECL 확장에서도 사용할 수 있습니다. 이전 PHP 버전에서는 실행할 수 없습니다.
PDO 설치
PDO 확장 프로그램이 설치되었는지는 PHP의 phpinfo() 함수를 통해 확인할 수 있습니다.
Unix 시스템에 PDO 설치
Unix 또는 Linux에서는 다음 확장자를 추가해야 합니다.
extension=pdo.so
Windows 사용자
PDO 및 모든 기본 드라이버는 PHP와 함께 공유 확장으로 출시됩니다. 활성화하려면 php.ini 파일을 편집하고 다음 확장을 추가하세요.
extension=php_pdo.dll
또한 다음과 같은 다양한 데이터베이스 확장이 있습니다.
;extension=php_pdo_firebird.dll ;extension=php_pdo_informix.dll ;extension=php_pdo_mssql.dll ;extension=php_pdo_mysql.dll ;extension=php_pdo_oci.dll ;extension=php_pdo_oci8.dll ;extension=php_pdo_odbc.dll ;extension=php_pdo_pgsql.dll ;extension=php_pdo_sqlite.dll
이러한 구성을 설정한 후에는 PHP 또는 웹 서버를 다시 시작해야 합니다. 다음으로 구체적인 예를 살펴보겠습니다. 다음은 PDO를 사용하여 MySql 데이터베이스에 연결하는 예입니다. 다음으로 살펴보겠습니다. PDO 관련 세부 지침: 사전 정의된 상수 PHP PDO 연결 연결 관리 PHP PDO 트랜잭션 및 자동 제출 PHP PDO 준비 문 및 저장 프로시저 PHP PDO 오류 및 오류 처리 PHP PDO 대형 개체(LOB) PDO 클래스: PDO::beginTransaction — 트랜잭션 시작 PDO::commit — 트랜잭션 커밋 PDO::__construct — 데이터베이스 연결 생성 PDO 인스턴스 PDO::errorCode — 데이터베이스 핸들의 마지막 작업과 관련된 SQLSTATE를 가져옵니다. PDO::errorInfo — 마지막 데이터베이스 작업의 오류 정보를 반환합니다. PDO: :exec — SQL 문을 실행하고 영향을 받은 행 수를 반환합니다. PDO::getAttribute — 데이터베이스 연결의 속성을 검색합니다. PDO::getAvailableDrivers — 다음의 배열을 반환합니다. 사용 가능한 드라이버 PDO::inTransaction — 트랜잭션 내에 있는지 확인 PDO::lastInsertId — 마지막으로 삽입된 행의 ID 또는 시퀀스 값 반환 PDO: :prepare — 준비 SQL 문을 실행하고 PDOStatement 개체를 반환합니다. PDO::query — SQL 문을 실행하고 결과 집합으로 이해할 수 있는 PDOStatement 개체를 반환합니다. PDO: :quote — SQL 문의 문자입니다. 문자열에 따옴표를 추가하세요. PDO::rollBack — 트랜잭션 롤백 PDO::setAttribute — 속성 설정 PDOStatement 클래스: PDOStatement::bindColumn — 열을 PHP 변수에 바인딩 PDOStatement::bindParam — 지정된 변수 이름에 매개변수 바인딩 PDOStatement::bindValue — 값을 매개변수에 바인딩 PDOStatement::closeCursor — 명령문을 다시 실행할 수 있도록 커서를 닫습니다. PDOStatement::columnCount — 결과 집합의 열 수를 반환합니다. PDOStatement::debugDumpParams — SQL 사전 처리 명령을 인쇄합니다. PDOStatement::errorCode — 마지막 열을 가져옵니다. 문 핸들 작업과 관련된 SQLSTATE PDOStatement::errorInfo — 마지막 문 핸들 작업과 관련된 확장 오류 정보 가져오기 PDOStatement::execute — 준비된 문 실행 PDOStatement ::fetch — 결과 집합에서 다음 행을 가져옵니다. PDOStatement::fetchAll — 결과 집합의 모든 행을 포함하는 배열을 반환합니다. PDOStatement::fetchColumn — 결과 집합에서 다음 행을 반환합니다. 열의 개별적인 결과 집합입니다. PDOStatement::fetchObject — 다음 줄을 가져와 객체로 반환합니다. PDOStatement::getAttribute — 명령문 속성 검색 PDOStatement::getColumnMeta — 결과 세트의 열에 대한 메타데이터 반환 PDOStatement::nextRowset — 다중 행 집합 문 핸들의 다음 행 집합으로 이동 PDOStatement::rowCount — 이전 SQL 문에 의해 영향을 받은 행 수를 반환합니다. PDOStatement::setAttribute — 문 속성을 설정합니다. PDOStatement::setFetchMode — 명령문의 기본 가져오기 모드를 설정합니다. 위 내용은 [php 튜토리얼] PHP PDO 내용입니다. 더 많은 관련 내용은 PHP 중국어 홈페이지(www.php.cn)를 참고해주세요! <?php
$dbms='mysql'; //数据库类型
$host='localhost'; //数据库主机名
$dbName='test'; //使用的数据库
$user='root'; //数据库连接用户名
$pass=''; //对应的密码
$dsn="$dbms:host=$host;dbname=$dbName";
try {
$dbh = new PDO($dsn, $user, $pass); //初始化一个PDO对象
echo "连接成功<br/>";
/*你还可以进行一次搜索操作
foreach ($dbh->query('SELECT * from FOO') as $row) {
print_r($row); //你可以用 echo($GLOBAL); 来看到这些值
}
*/
$dbh = null;
} catch (PDOException $e) {
die ("Error!: " . $e->getMessage() . "<br/>");
}
//默认这个不是长连接,如果需要数据库长连接,需要最后加一个参数:array(PDO::ATTR_PERSISTENT => true) 变成这样:
$db = new PDO($dsn, $user, $pass, array(PDO::ATTR_PERSISTENT => true));
?>