Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как програмно посчитать кол-во записей в БД? [D6, Paradox]


Ежик ©   (2002-04-01 13:30:00) 

Мне нужно чтоб в Label1.Caption отображалось общее кол-во записей
занесенных в Базу Данных.
Заранее Благодарен!


Romul   (2002-04-01 18:06:00) [1]

Хорошо, посмотрим на ситуацию с другой стороны, может человеку нужно не просто количество записей, а он с этими записями работать будет, тогда на кой ему Count делать, он вытаскивает записи, а потом RecordCount.


Johnmen   (2002-04-01 17:31:00) [2]

>Anatoly Podgoretsky © : И ... ?


Anatoly Podgoretsky   (2002-04-01 17:24:00) [3]

В соучае десктопных баз нет сервера, который бы посчитал количество записей, этим будет заниматься клиент


Johnmen   (2002-04-01 17:14:00) [4]

>Romul © : Смысл есть, особенно если используется BDE.


Romul   (2002-04-01 17:07:00) [5]

Да не, я не про то, просто Nikolay M. сказал, что чтобы, допустим, миллион записей ПО СЕТИ не тоскать и т.д. Поскольку человек не сказал где у него Парадуха стоит (локально или на сетевом компутере), если локально то и обсуждать преймущества COUNT и RecordCount смысла нет.


Donal_Graeme   (2002-04-01 15:07:00) [6]

2 Romul :

если ты хочешь этим сказать, что в Парадоксе нельзя написать SELECT COUNT (*) FROM Table, то ты сильно ошибаешься :-)


Romul   (2002-04-01 14:33:00) [7]

Вот именно, что про Пародокс. А то что COUNT(*), так это и ежу понятно, если б у него (у ежа :)) например MSSQL стоял.


Aleksandr   (2002-04-01 14:20:00) [8]

2 Nikolay M.
Открытый ДатаСет все равно заполняет свое проперти RecordCount, так что нет разницы, сколько в нем записей... Есть, кстати у Борланда прокол - при обращении к этой проперти закрытого ДатаСета генерируется исключение.
Другое дело, если записи возвращаются с каким-либо условием - тогда он будет считать только количество совпадающих по условию... В таком случае быстрее выполнить препарированный SELECT COUNT(1) FROM [TableName]. И то зависит от драйвера баз данных - локальные к SQL-запросам достаточно нервно относятся.


Anatoly Podgoretsky   (2002-04-01 13:59:00) [9]

Есть, но какая разница, раз про Парадокс речь


Nikolay M.   (2002-04-01 13:57:00) [10]


> в одной, то можно посмотреть свойство RecordCount у Query
> после Select * From Table_Name.

действительно - вытянуть по сети пару миллионов записей из таблицы, а потом посмотреть, сколько же их там сидит :)

а я вот еще слышал, что в SQL есть такая функция, как COUNT()...
SELECT COUNT(*) FROM TableName


Romul   (2002-04-01 13:45:00) [11]

Как это в Базе Данных? Во всех таблицах? Если в одной, то можно посмотреть свойство RecordCount у Query после Select * From Table_Name.


Johnmen   (2002-04-01 13:45:00) [12]

Если имеешь в виду сколько там сейчас, то выполни запрос на количество, приведи его к строке и в Caption.


Наверх

Титульная страница Поиск, карта сайта Написать письмо