Perl Cd Bookshelf [Electronic resources] نسخه متنی

اینجــــا یک کتابخانه دیجیتالی است

با بیش از 100000 منبع الکترونیکی رایگان به زبان فارسی ، عربی و انگلیسی

Perl Cd Bookshelf [Electronic resources] - نسخه متنی

| نمايش فراداده ، افزودن یک نقد و بررسی
افزودن به کتابخانه شخصی
ارسال به دوستان
جستجو در متن کتاب
بیشتر
تنظیمات قلم

فونت

اندازه قلم

+ - پیش فرض

حالت نمایش

روز نیمروز شب
جستجو در لغت نامه
بیشتر
لیست موضوعات
توضیحات
افزودن یادداشت جدید



14.14. Finding the Number of Rows Returned by a Query


14.14.1. Problem


You
want to find out how many rows were returned by a query.

14.14.2. Solution


For operations that aren't queries (such as INSERTs, UPDATEs, and
DELETEs), the do method returns the number of rows
affected, -1 when it can't determine the right value, or else
undef in case of
failure.

$rows = $dbh->do("DELETE FROM Conference WHERE Language='REBOL'");
if (! defined $rows) {
# failed, but this is not needed if RaiseError is active
} else {
print "Deleted $rows rows\n";
}

You can't reliably get row counts from queries without either
fetching all of the results and then counting them, or writing
another query.

14.14.3. Discussion


The easiest way to find out how many rows a query will return is to
use the COUNT function in SQL. For example, take this query:

SELECT id,name FROM People WHERE Age > 30

To find out how many rows it will return, simply issue this query:

SELECT COUNT(*) FROM People WHERE Age > 30

If the database is so volatile that you're afraid the number of rows
will change between the COUNT query and the data-fetching query, your
best option is to fetch the data and then count rows yourself.

With some DBD modules, execute returns the number
of rows affected. This isn't portable and may change in the future.

14.14.4. See Also


The documentation with the DBI module from CPAN; http://dbi.perl.org; Programming
the Perl DBI



14.13. Building Queries Programmatically14.15. Using Transactions




Copyright © 2003 O'Reilly & Associates. All rights reserved.

/ 875