English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
mysqli_affected_rows() 함수는 마지막 MySQL 작업에서 영향을 받은 행 수를 가져옵니다.
mysqli_affected_rows()함수의 역할은 다음과 같습니다: INSERT, UPDATE, REPLACE 또는 DELETE 쿼리 후 호출되면, 이전 작업에 영향을 받은 행 수를 반환합니다.
select 문장 후에 사용할 때 이 함수는 행 수를 반환합니다。
mysqli_affected_rows($con)
순번 | 파라미터 및 설명 |
---|---|
1 | con(필수) 이는 MySQL Server와의 연결을 나타내는 객체입니다。 |
PHP mysqli_affected_rows() 함수는 이전(선택, 삽입, 수정, 대체 또는 제거) 작업에 영향을 받은 행 수를 나타내는 정수 값을 반환합니다。
이전 쿼리가 오류가 있으면 이 함수는 반환합니다 -1。영향을 받은 행이 없거나 이전 쿼리/작업이 위에 언급된 쿼리가 아니면/중 하나의 작업이면 이 함수는 0을 반환합니다.
이 함수는 원래 PHP 버전5중에서 도입되었으며, 모든 더 높은 버전에서 사용할 수 있습니다.
다음 예제는 다음과 같이 표시되었습니다.mysqli_affected_rows()함수의 사용법(프로그램 스타일)
<?php //연결 생성 $con = mysqli_connect("localhost", "root", "password", "mydb"); //employee 테이블의 모든 행을 검색하는 쿼리 mysqli_query($con, "SELECT * FROM employee"); //영향을 받은 행 $rows = mysqli_affected_rows($con); print("영향을 받은 행 수: ".$rows); //연결을 닫기 mysqli_close($con); ?>
출력 결과
영향을 받은 행 수: 5
객체 지향 스타일에서 이 함수의 문법은 $con -> affected_rows, $con 은 연결 객체입니다-
<?php //연결 생성 $con = new mysqli("localhost", "root", "password", "mydb"); //employee 테이블의 모든 행을 검색하는 쿼리 $con -> query("SELECT * FROM employee"); //영향을 받은 행 수 $rows = $con -> affected_rows; print("영향을 받은 행 수: ".$rows); //연결을 닫기 $con -> close(); ?>
출력 결과
영향을 받은 행 수: 5
다음과 같은 경우에, 이 함수의 반환 값을 확인해 보겠습니다: 지정된 쿼리가 없고, 쿼리가 오류가 있거나 어떤 행도 영향을 받지 않았을 때:
<?php //연결 생성 $con = mysqli_connect("localhost", "root", "password", "mydb"); $rows1 = mysqli_affected_rows($con); print("영향을 받은 행(사전에 지정되지 않은 작업 시): ".$rows1".\n"); //employee 테이블의 모든 행을 검색하는 쿼리 mysqli_query($con, "SELECT * FROM employee"); $rows2 = mysqli_affected_rows($con); print("영향을 받은 행(쿼리 오류 시): ".$rows2".\n"); //employee 테이블의 모든 행을 검색하는 쿼리 mysqli_query($con, "SELECT FIRST_NAME FROM employee WHERE AGE \<=19"); $rows3 = mysqli_affected_rows($con); print("영향을 받은 행(불완전한 쿼리 시): ".$rows3".\n"); //연결을 닫기 mysqli_close($con); ?>
출력 결과
영향을 미친 행(이전에 명시되지 않은 작업): 0 영향을 미친 행(쿼리에 오류가 있을 때): -1 영향을 미친 행(쿼리가 어떤 작업도 수행하지 않았을 때): 0
아래의 예제는 SELECT, UPDATE, INSERT 및 DELETE 쿼리에서mysqli_affected_rows함수의 사용법-
<?php //연결을 설정 $con = mysqli_connect("localhost", "root", "password", "mydb"); //employee 테이블의 모든 행을 검색 mysqli_query($con, "SELECT * FROM employee WHERE INCOME > 8000"); print("SELECT 쿼리가 영향을 미친 행: ".mysqli_affected_rows($con)."\n"); //employee 테이블의 행을 업데이트하는 쿼리 mysqli_query($con, "UPDATE employee SET INCOME=INCOME+5000 WHERE FIRST_NAME IN ('Ramya', 'Trupthi', 'Sarmista')"); print("UPDATE 쿼리가 영향을 미친 행: ".mysqli_affected_rows($con)."\n"); //employee 테이블에 행을 삽입하는 쿼리 mysqli_query($con, "INSERT INTO employee VALUES ('Archana', 'Mohonthy', 30, 'M', 13000, 106);"); print("INSERT 쿼리가 영향을 미친 행: ".mysqli_affected_rows($con)."\n"); //employee 테이블의 행을 삭제하는 쿼리를 검색 mysqli_query($con, "DELETE FROM employee WHERE AGE > 25"); print("DELETE 쿼리가 영향을 미친 행: ".mysqli_affected_rows($con)."\n"); //연결을 닫기 mysqli_close($con); ?>
출력 결과
SELECT 쿼리가 영향을 미친 행: 4 UPDATE 쿼리가 영향을 미친 행: 3 INSERT 쿼리가 영향을 미친 행: 1 DELETE 쿼리가 영향을 미친 행: 3