MySQL과 MySQLi과 PDO의 차이점은 무엇입니까?MySQL, MySQLi 및 PDO의 차이점은 무엇입니까?
PHP-MySQL과 함께 사용하기에 가장 적합한 것은 어느 것입니까?
MySQL과 MySQLi과 PDO의 차이점은 무엇입니까?MySQL, MySQLi 및 PDO의 차이점은 무엇입니까?
PHP-MySQL과 함께 사용하기에 가장 적합한 것은 어느 것입니까?
사람들은
따라서 생성하려는 코드의 종류에 따라 다릅니다. 당신은 객체 지향 층 또는 일반 기능을 ... 선호하는 경우
는내 조언이 될 것
내 느낌 MySQL은
PHP
으로 삭제 될 예정입니다.mysqli은 향상된 버전의 mysql입니다.
PDO extension은 PHP의 데이터베이스에 액세스하기위한 가볍고 일관된 인터페이스를 정의합니다. PDO 인터페이스를 구현하는 각 데이터베이스 드라이버는 데이터베이스 확장 기능을 일반 확장 기능으로 제공 할 수 있습니다.
수동 파일에서 복사하는 것은별로 유용하지 않습니다. – XuDing
PHP에서 MySQL을 사용하는 세 가지 방법이 있습니다.
준비된 진술과 함께 PDO를 사용하는 것이 좋습니다. 잘 설계된 API이며 필요한 경우 다른 데이터베이스 (ODBC을 지원하는 데이터베이스 포함)로 더 쉽게 이동할 수 있습니다.
절차 적으로 mysql _ *() 함수를 사용해야한다는 혼란이 종종 있습니다. 여기서 OO의 경우 mysqli를 사용합니다! 사실 mysqli는 mysql의 초기 (PHP 4) 구현을 완전히 대체합니다. mysqli에서는 절차 적 스타일과 OO 스타일을 모두 사용할 수 있습니다. –
@ Patrick, 고마워. 나는 이것을 바로 잡았다. –
3 API 기능을 비교하면 table가 있습니다. 가능한 한 Mysqli를 사용하십시오. PDO 이후에 출시 된 최신 제품이며 앞으로도 더 잘 유지 될 것입니다.
이것은 단순히 잘못된 것입니다. 'mysqli'와'PDO'는 PHP 5.0을위한 [모두 공개] (http://www.php.net/manual/en/mysqli.overview.php)되었습니다. 그리고 당신은 PDO가 유지되지 않을 것이라는 어떠한 근거도 제시하지 않았습니다. –
나는 그것을 제안하지 않았다. PDO와 mysqli는 서로 다른 기능을 가지고 있으며 아마 둘 다 mantained 될 것입니다. PDO MAIN FEATURE는 다른 드라이버에서 일관된 API이며, mysql은 그 중 하나입니다. –
특히, MySQLi 확장 준비된 명령문 지원 거래 + 저장 프로 시저 지원 좋네요 구문 속도 개선 (절차 이외에)
OOP 인터페이스 .. 기존의 MySQL의 확장에 비해 다음과 같은 매우 유용한 혜택을 제공 향상된 디버깅
PDO 확장
PHP 데이터 확장 개체는 데이터베이스 추상화 계층이다. 특히 이것은 많은 데이터베이스 엔진 (물론 MYSQL 포함)을위한 드라이버를 제공하기 때문에 MySQL 인터페이스가 아닙니다.
PDO는 일관된 API를 제공하여 데이터베이스 엔진이 변경 될 때이를 반영하여 코드가 변경된다는 것을 의미합니다. PDO를 사용할 때 코드는 일반적으로 사용중인 드라이버를 변경하여 많은 데이터베이스 엔진에서 "제대로 작동합니다".
데이터베이스 간 호환이 가능할뿐 아니라 PDO는 MySQL 드라이버를 사용하면서 준비된 문, 저장 프로 시저 및 기타 기능을 지원합니다.
MySQL Improved Extension을 사용하면 다양한 이점을 제공 할 수 있습니다. mysqli 확장을 사용하면 MySQL 4.1 이상에서 제공하는 기능에 액세스 할 수 있습니다.
PHP 데이터 객체 (PDO) 확장은 PHP에서 데이터베이스에 액세스하기위한 가볍고 일관된 인터페이스를 정의합니다. PDO 인터페이스를 구현하는 각 데이터베이스 드라이버는 데이터베이스 확장 기능을 일반 확장 기능으로 제공 할 수 있습니다. PDO 확장을 사용하여 데이터베이스 기능을 수행 할 수는 없습니다. 데이터베이스 전용 PDO 드라이버를 사용하여 데이터베이스 서버에 액세스해야합니다.
대단한 explaination :) thanks –
더 이상 느끼지 않습니다. PHP7은 mysql API를 제거하고 PDO와 mysqli를 남겨두고 –