Показать сообщение отдельно
Старый 09.01.2002, 22:18   #12  
Роман Кошелев is offline
Роман Кошелев
Продавец игрушек
Аватар для Роман Кошелев
 
433 / 73 (3) ++++
Регистрация: 22.11.2001
Адрес: Москва
Вполне допустимо и понятно что в 1С это сложно сделать -- у них там всё левой рукой через правое ухо достаётся (метамодель данных).

А вот в Аксапте, где метамодель практически напрямую отображается в SQL, узнать число строк несложно. Конечно, "select count(recId) from table" будет выполняться медленно, но, с другой стороны, "а зачем?".
Сергей (buh) угудал -- в SQL есть такие мета-таблицы. Более того, необходимость в них указана Тэдом Коддом в его "Двенадцати правилах, которым должна соответствовать реляционная СУБД".
http://matviyko.narod.ru/transaction.htm (см. "Реляционная БД")

Правило №4:
Правило динамического каталога, основанного на реляционной модели
Описание базы данных на логическом уровне должно быть представлено в том же виде, что и основные данные, чтобы пользователи, обладающие соответствующими правами, могли работать с ним с помощью того же реляционного языка, который они применяют для работы с основными данными.
Место, в котором хранится необходимая информация, называется "системные таблицы". Там есть все -- от описания столбцов таблиц до привелегий (прав), индексов и взаимосвязей. Вряд-ли там нет числа строк в таблицах.

Например, в том же MS SQL Analyzer видим саму таблицу LedgerJournalTrans и её описание. И там, и там -- 810 строк.


Системная таблица SysIndexes


Собственно таблица LedgerJournalTrans
Вложения
Тип файла: img836-1 (8.5 Кб, 1038 просмотров)
Тип файла: img836-2 (6.6 Кб, 1184 просмотров)
__________________
С уважением, Роман Кошелев.