PHP를 이용하여 mysql 또는 pdo에서 ALTER 문의 결과를 어떻게 보여주나요?
명령줄에서 쿼리를 실행하면 다음과 같은 결과가 나타납니다.
Query OK, 0 rows affected (0.23 sec)
Records: 0 Duplicates: 0 Warnings: 0
PHP PDO를 이용하여 위의 정보를 얻을 수 있는 방법이 있습니까?
이 정보는 다음에 의해 반환되기 때문에 쉬운 방법은 없습니다.mysql_info()
C API 호출(이것은 몇 년 전 pph에서 사용하지 않은 mysql API가 아닌 C API입니다. 비록 동일한 호출을 구현했지만)은 벤더 특정 PDO에서 구현되지 않습니다.
PDOStatement::rowCount()를 사용하여 영향을 받는 행 수 또는 일치하는 행 수를 반환할 수 있습니다.그러나 메서드에서 반환되는 값은 mysql에 대한 연결을 구성하는 방법에 따라 달라집니다.
제공하는 경우PDO::MYSQL_ATTR_FOUND_ROWS
구성 옵션으로, 그러면rowCount()
일치하는 행을 반환합니다.
$connection = new PDO($dsn, $user, $pass, array(PDO::MYSQL_ATTR_FOUND_ROWS => true));
이 옵션을 제외하면,rowCount()
영향을 받는 행을 반환합니다.따라서 단일 연결에서 두 정보를 모두 얻을 수 있는 쉬운 방법은 없습니다.
경고 수를 얻으려면 show warns sql 문을 실행하고 결과 집합을 루프로 통과하여 결과 집합에 있는 경고(또는 노트)를 카운트할 수 있습니다.show warnings
결과에는 오류와 메모도 포함되므로 목록을 필터링해야 할 수도 있습니다.
저는 당신이 마지막 진술서에 중복되는 숫자를 어떻게 구할지 모릅니다.
mysqli
PDO 대신 mysqli를 사용한 경우 mysqli_info() 호출을 사용하여 원하는 데이터를 얻을 수 있습니다.
그리고... 사용.microtime(true)
시간을 내기 위해서요그리고 실행합니다.SHOW WARNINGS
(마치 a인 것처럼SELECT
경고(또는 없음)를 받습니다.
언급URL : https://stackoverflow.com/questions/43589684/how-do-you-show-the-result-of-an-alter-statement-in-mysql-or-pdo-using-php
'programing' 카테고리의 다른 글
템플릿 파일이 변경되면 Plask 앱 다시 로드 (0) | 2023.10.16 |
---|---|
libav 형식으로 메모리에 있는 파일 읽기 (0) | 2023.10.16 |
a + b + c = 1000인 피타고라스 삼중항 찾기 (0) | 2023.10.11 |
우커머스 수동으로 주문 추가:ajax 호출에서 제품을 필터링하는 방법 (0) | 2023.10.11 |
input_event structure description (linux/input에서).h) (0) | 2023.10.11 |