2013-04-25 2 views
2

저는 PDO를 사용하고 있는데이 메시지가 나타났습니다.하지만 PDO가 실제로 mysqli를 구현 한 것으로 보았습니다.PDO가 mysqli 또는 mysql을 구현합니까?

당신은 다중 쿼리를 처리 할 수없는 이 아닌 PHP의 'mysql'확장자를 사용하고 있습니다. 일부 저장 루틴을 실행하면 이 실패 할 수 있습니다! 문제가 발생하지 않도록 개선 된 'mysqli'확장 프로그램을 사용하십시오.

왜이 메시지가 나옵니까?

+0

예 mysql_ * api는 더 이상 사용되지 않습니다. pdo 또는 mysqli와 같은 데이터베이스에 새로운 api를 사용해야합니다. –

+0

@ArunKillu 그래서 pdo를 사용하면 mysqli가 필요하지 않습니까? – jingchyu

+0

예. 'PDO'는 mysql 대신에 mysqli를 구현한다. 최신 버전을 확인하십시오. – BlitZ

답변

1

Mysql은 한 번에 여러 개의 쿼리를 실행할 수 없습니다. Mysql 또한 prepared statement를 지원하지 않습니다. 이 때문에 당신은 Mysqli을 사용해야하며, 둘 다 지원합니다.

+0

'php_mysql'은 저장 프로 시저도 지원하지 않습니다. – BlitZ

+0

@ user2308038 서버에 mysqli 확장을 설치하고이 튜토리얼을 사용한다. http://php.net/manual/en/book.mysqli.php –

2

이것은 거의 DOMDocumentSimpleXML의 차이점이나 phppython의 차이점을 묻는 것과 같습니다. 그것들은 서로 다른 라이브러리이지만, 둘 다 MySQL 데이터베이스 서버와 인터페이스하기위한 것입니다.

PHP는 많은 논의 이전에이 주제에 있습니다

0

quite a nice job of cataloging the differences을했다. 당신은 더 나은 인터넷 검색 (Stackoverflow에서만).

등 :

What is difference between mysql,mysqli and pdo?

Difference between mysqli and mysql?

당신은 더 많은 연구 남자를 할 필요가있다. 비판적으로 생각하고 프로그래머가 되십시오. ;)

+0

나는 그들 사이의 차이점을 묻지 않았다. 나는 PDO가 실제로 mysqli를 구현 한 것을 발견 한 이후로 PDO를 사용하여 메시지를 표시하는 이유를 묻고있었습니다. – jingchyu

+0

그러면 첫 번째 링크가 더 나을 것입니다. –

0

저는 실제로 PDO가 mysqli를 구현했다고 생각했습니다.

좋은 질문이지만 잘못된 것입니다. PDO는 모든 데이터베이스 시스템을 사용할 수 있도록 인터페이스를 구현합니다. 그래서 그들은 단지 예를 들어 SQLite를 위해 아직 에뮬레이트되지 않은 몇 가지 특별한 기능을 필요로하기 때문에 mysqli의 일부 기능을 구현할 수 없습니다! PDO와 pgsql_ API를 비교할 때 유사한 문제가 발생할 수 있습니다.

관련 문제