라이브러리

[PHP] PdoPgsql::escapeIdentifier - SQL 식별자로 사용할 문자열을 이스케이프합니다.




PDO와 PostgreSQL


PDO (PHP Data Objects) 는 PHP 에서 데이터베이스와 상호작용하는 표준화된 방법을 제공합니다. PostgreSQL 은 관계형 데이터베이스 관리 시스템 중 하나입니다. PDO_PgSQL 는 PostgreSQL 과 함께 사용할 수 있는 PDO 드라이버입니다.

PdoPgsql::escapeIdentifier


`PdoPgsql::escapeIdentifier` 메소드는 PostgreSQL 의 식별자 (identifier) 를 이스케이프합니다. 식별자는 테이블 이름, 열 이름, 뷰 이름, 인덱스 이름 등과 같은 데이터베이스 객체의 이름을 가리킵니다.

식별자를 이스케이프하는 이유는 PostgreSQL 에서 식별자에 특수 문자를 사용할 수 없기 때문입니다. 예를 들어, 테이블 이름이 `my_table` 인 경우, 식별자를 이스케이프하면 `my_table` 대신 `my_table`로 변환됩니다.

예제


#hostingforum.kr
php

// PDO_PgSQL 드라이버를 사용하여 PostgreSQL 데이터베이스에 연결합니다.

$db = new PDO('pgsql:host=localhost;dbname=mydb', 'myuser', 'mypassword');



// 식별자를 이스케이프합니다.

$escapedTable = $db->quoteIdentifier('my_table');

$escapedColumn = $db->quoteIdentifier('my_column');



// SQL 문을 생성합니다.

$sql = "SELECT * FROM $escapedTable WHERE my_column = '값'";



// SQL 문을 실행합니다.

$stmt = $db->query($sql);



// 결과를 출력합니다.

while ($row = $stmt->fetch()) {

    print_r($row);

}



이스케이프한 식별자 예제


#hostingforum.kr
php

// 식별자를 이스케이프합니다.

$escapedTable = $db->quoteIdentifier('my_table');

$escapedColumn = $db->quoteIdentifier('my_column');



// 이스케이프한 식별자를 출력합니다.

echo "escapedTable: $escapedTable
";

echo "escapedColumn: $escapedColumn
";



실행 결과:

#hostingforum.kr


escapedTable: "my_table"

escapedColumn: "my_column"



참고


* PDO_PgSQL 드라이버의 공식 문서:
* PostgreSQL 의 공식 문서:
  • profile_image
    나우호스팅 @pcs8404 

    호스팅포럼 화이팅!

    댓글목록

    등록된 댓글이 없습니다.

  • 전체 10,077건 / 334 페이지

검색

게시물 검색