آموزش MySQL > مرجع توابع MySQL > تابع ( ) mysqli_affected_rows
تابع ( ) mysqli_affected_rows :
تابع ( ) mysqli_affected_rows ، تعداد سطرها ( رکوردهایی ) که در دستور قبلی SELECT,
INSERT, UPDATE, DELETE یا ... برنامه ، عملیاتی بر روی آنها انجام گرفته است را بر
می گرداند .
برای مثال ، فرض کنید که در یک دستور DELETE در یک Query ، تعیین می کنید تا رکورد
افرادی که مقدار فیلد سن ( Age ) آنها ، از 30 بیشتر است ، حذف شوند .
برنامه این دستور را اجرا کرده و اطلاعات رکوردهای تعیین شده را حذف می کند . با به
کار بردن تابع ( ) mysqli_affected_rows ، بلافاصله بعد از دستور DELETE می توانید
بفهمید که چه تعداد رکورد از جدول حذف شده است .
نکته : خروجی این تابع یک مقدار Integer یا عددی بزرگتر از صفر خواهد
بود .
شکل کلی استفاده از این تابع به صورت زیر است :
|
syntax
|
mysqli_affected_rows( connection ) ;
|
|
توضیح
|
این پارامتر ارتباط ( connection ) که در Query مورد استفاده قرار گرفته است را تعیین
می کند .
استفاده از این پارامتر اجباری است .
|
مثال عملی :
مثال : در مثال زیر به صورت عملی استفاده از تابع ( ) mysqli_affected_rows
را نمایش داده ایم .
در این مثال ابتدا یک دستور SELECT اجرا شده و اطلاعات تمامی رکوردهای جدول را نمایش
داده است . سپس به وسیله یک تابع ( ) mysqli_affected_rows ، تعداد رکوردهای جدول را
که در دستور SELECT استخراج شده اند ، را نمایش داده ایم .
در دستور دوم توسط یک دستور DELETE رکوردهای افرادی که مقدار فیلد سن ( Age ) آنها
از 30 بیشتر است را از جدول پاک نموده ایم . مجددا با به کار بردن یک دستور تابع (
) mysqli_affected_rows ، در خروجی تعداد رکوردهای حذف شده توسط دستور DELETE را نشان
داده ایم :
|
مثال
|
< ? php
$con=mysqli_connect("localhost","my_user","my_password","my_db");
// اتصال به پایگاه داده
if (mysqli_connect_errno($con)) // صدور پیام خطا
در صورت عدم موفقیت در ارتباط
{
echo "Failed to connect to MySQL:
" . mysqli_connect_error();
}
// SELECT اجرای یک دستور
mysqli_query($con,"SELECT * FROM Persons");
// سپس تعیین تعداد رکوردهایی که در دستور فوق بوده اند
echo "Affected rows: " . mysqli_affected_rows($con);
// DELETE اجرای یک دستور
mysqli_query($con,"DELETE FROM Persons WHERE Age>30");
// سپس تعیین تعداد رکوردهایی که در دستور فوق بوده اند
echo "Affected rows: " . mysqli_affected_rows($con);
mysqli_close($con); // بستن ارتباط با پایگاه داده
? >
|
|
خروجی فرضی
|
120
16
|
راجع این مطلب
سوال یا اشکالی دارید ؟! آن را در انجمن سایت مطرح نمایید ...
>>>>> ورود به انجمن تخصصی
نظر خودتان درباره این صفحه را با ما در میان بگذارید :