![]() |
|
Модераторы: korob2001, ginnie |
![]()
|
|
| AlexanderI |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 230 Регистрация: 9.7.2004 Репутация: 2 Всего: 3 |
Каким образом можно узнать количество записей в базе после запроса ?
Я делаю это так, а есть ли какой-нибудь альтернативный, простой способ ?
--------------------
Магазин детских игрушек | Авто ВАЗ |
|||
|
||||
| korob2001 |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2871 Регистрация: 29.12.2002 Репутация: 31 Всего: 61 |
-------------------- "Время проходит", - привыкли говорить вы по неверному пониманию. "Время стоит - проходите вы". |
|||
|
||||
| BlackLFL |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 263 Регистрация: 15.9.2005 Где: Москва Репутация: 8 Всего: 12 |
Более правильно писать так
sql.ru - Подсчитывание количеста записей в таблице MySQL |
||||
|
|||||
| AlexanderI |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 230 Регистрация: 9.7.2004 Репутация: 2 Всего: 3 |
А на Perl как это будет выглядеть ? Там все примеры на PHP.
--------------------
Магазин детских игрушек | Авто ВАЗ |
|||
|
||||
| korob2001 |
|
||||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2871 Регистрация: 29.12.2002 Репутация: 31 Всего: 61 |
Там все примеры на SQL. В Perl запросы так же строятся на SQL, т.е. вместо такого запроса:
Далаешь такой:
-------------------- "Время проходит", - привыкли говорить вы по неверному пониманию. "Время стоит - проходите вы". |
||||
|
|||||
| AlexanderI |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 230 Регистрация: 9.7.2004 Репутация: 2 Всего: 3 |
Мне непонятно какая переменная будет храть эту цифру ? Как её вывести на экран ?
--------------------
Магазин детских игрушек | Авто ВАЗ |
|||
|
||||
| korob2001 |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2871 Регистрация: 29.12.2002 Репутация: 31 Всего: 61 |
-------------------- "Время проходит", - привыкли говорить вы по неверному пониманию. "Время стоит - проходите вы". |
|||
|
||||
| BlackLFL |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 263 Регистрация: 15.9.2005 Где: Москва Репутация: 8 Всего: 12 |
korob2001, есть специальный метод selectrow_array, который объединяет prepare, execute, fetchrow
Это сообщение отредактировал(а) BlackLFL - 13.2.2006, 22:30 |
|||
|
||||
| korob2001 |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2871 Регистрация: 29.12.2002 Репутация: 31 Всего: 61 |
Да я не спорю, просто у человека было так написано, я так же и написал. Тебе так же нужно переменную захватить в скобки, что бы создать списковой контекст, иначе получишь общее кол-во элементов возвращённого массива, т.е. 1
-------------------- "Время проходит", - привыкли говорить вы по неверному пониманию. "Время стоит - проходите вы". |
|||
|
||||
| BlackLFL |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 263 Регистрация: 15.9.2005 Где: Москва Репутация: 8 Всего: 12 |
korob2001, я получю значение, возращенное count(*)
Добавлено @ 22:50 т.к. count(*) возращает всего одно значение, соответственно, мне не нужен списковый контекст Это сообщение отредактировал(а) BlackLFL - 13.2.2006, 22:48 |
|||
|
||||
| korob2001 |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2871 Регистрация: 29.12.2002 Репутация: 31 Всего: 61 |
Одно значение могло бы находиться и в массиве, который ты запрашиваешь. Но всё верно ты говоришь, потому как там возвращаемое значение зависит от контекста. Это сообщение отредактировал(а) korob2001 - 13.2.2006, 23:01 -------------------- "Время проходит", - привыкли говорить вы по неверному пониманию. "Время стоит - проходите вы". |
|||
|
||||
| Kannabismus |
|
|||
|
Тим Тоуди Профиль Группа: Участник Сообщений: 45 Регистрация: 20.11.2005 Репутация: 1 Всего: 2 |
Для подсчета суммарного кол-ва возможных строк в запросе с лимитом можно использовать:
|
|||
|
||||
| rcdimon |
|
||||||||||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 766 Регистрация: 12.7.2004 Где: Москва Репутация: 1 Всего: 2 |
Гы. Летом я занимался написанием подрограммы для работы с БД. Что бы было легко работать и можно было быстро менять запрос не меняя программу. И вот что у меня получилось. Не без помощи форумцев.
Пользоваться этой подпрограммой одно УДОВОЛЬСТВИЕ!
Дальнейшие действия зависят от того какой у нас был запрос. Если это просто вставка или модификация информации, то исполняем запрос так
Если это запрос SELECT то выполняется так
Все. Ответ базы данных находится в хешах. А что бы добраться до них нам надо разыменовать $ref Если у вас такой запрос, что в ответ база выдаст только одну строку, то удобнее пользоваться такой конструкцией
А если в ответ SQL сервер выдаст много строк, то вынимать надо так
Воть. Так что используй эту подпрограмму и никогда не будет вопросов в какой переменной получить ответ от базы данных Это сообщение отредактировал(а) rcdimon - 15.2.2006, 11:34 |
||||||||||||
|
|||||||||||||
| BlackLFL |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 263 Регистрация: 15.9.2005 Где: Москва Репутация: 8 Всего: 12 |
а смысл использовать аж два "интерфейса" подряд, если можно обойтись одним?
Это сообщение отредактировал(а) BlackLFL - 16.2.2006, 18:42 |
|||
|
||||
| rcdimon |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 766 Регистрация: 12.7.2004 Где: Москва Репутация: 1 Всего: 2 |
|
|||
|
||||
![]()
|
| Правила форума "Perl" | |
|
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, korob2001, sharq. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Perl: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |