Максимальное количество строк в таблице механизма базы данных Access MS?

Традиционный способ иметь дело с этим состоит в том, чтобы послать электронное письмо с пустым отправителем конверта (традиционно записанный как <>). Это предотвращает автореспондента на другом конце от ответа, потому что нет никакого отправителя для ответа на.

14
задан onedaywhen 10 April 2013 в 13:44
поделиться

6 ответов

Вот моя попытка:

Я создал таблицу с одним столбцом ( INTEGER ) без ключа:

CREATE TABLE a (a INTEGER NOT NULL);

Вставлены целые числа в последовательности, начиная с 1.

Я остановил его (произвольно через много часов), когда он вставил 65 632 875 строк. Размер файла составлял 1 029 772 КБ.

Я сжал файл, который очень немного уменьшил его до 1029 704 КБ.

Я добавил PK:

ALTER TABLE a ADD CONSTRAINT p PRIMARY KEY (a);

, который увеличил размер файла до 1467 708 КБ.

Это предполагает максимум где-то около 80 миллионов.

9
ответ дан 1 December 2019 в 09:33
поделиться

Все зависит от обстоятельств. Теоретически используется один столбец с 4-байтовым типом данных. Вы можете хранить 300 000 строк. Но, вероятно, еще до того, как вы что-нибудь сделаете, в базе данных будет много накладных расходов. Я кое-где читал, что у вас может быть 1.000.000 строк, но опять же, все зависит от ..

Вы также можете связать базы данных вместе. Ограничение себя только дисковым пространством.

0
ответ дан 1 December 2019 в 09:33
поделиться

Некоторые комментарии:

  1. Файлы Jet / ACE организованы в виде страниц данных, что означает, что существует определенный объем свободного места, когда границы вашей записи не выровнены со страницами данных.

  2. Блокировка на уровне строк значительно сократит количество возможных записей, поскольку она заставляет одну запись на страницу данных.

  3. В Jet 4 размер страницы данных был увеличен до 4 КБ (с 2 КБ в Jet 3.x). Поскольку Jet 4 была первой версией Jet, поддерживающей Unicode, это означало, что вы могли хранить 1 ГБ двухбайтовых данных (то есть 1 000 000 000 двухбайтовых символов), а при включенном сжатии Unicode - 2 ГБ данных. Таким образом, количество записей будет зависеть от того, включено ли у вас сжатие Unicode.

  4. Поскольку мы не знаем, сколько места в файле Jet / ACE занимают заголовки и другие метаданные, ни точно, сколько занимает хранилище индексов комнаты, теоретический расчет всегда будет в пределах практических.

  5. Чтобы получить максимально эффективное хранилище, вам нужно использовать код для создания своей базы данных, а не пользовательский интерфейс Access, поскольку Access создает определенные свойства, которые не нужны чистому Jet. Это не означает, что их много, поскольку свойства, установленные для значений по умолчанию для доступа, обычно не задаются вообще (свойство создается только тогда, когда вы меняете его со значения по умолчанию - это можно увидеть, прокрутив поле properties, т. е. многие свойства, перечисленные для поля в конструкторе таблиц Access, отсутствуют в коллекции свойств, потому что они не были установлены), но вы можете ограничиться типами данных, специфичными для Jet (поля гиперссылок доступны только для доступа, например).

Я просто потратил час на то, чтобы возиться с этим, используя Rnd () для заполнения 4 полей, определенных как байт типа, с составным PK для четырех полей, и потребовалась целая вечность, чтобы добавить достаточно записей, чтобы получить любую значительную часть 2 ГБ . При более чем 2 миллионах записей размер файла не превышал 80 МБ. В конце концов я ушел, набрав всего 700K 7 МИЛЛИОНОВ записей, и файл был сжат до 184 МБ. Время, которое потребуется, чтобы набрать около 2 ГБ, просто больше, чем я готов вложить!

В конце концов я ушел, набрав всего 700K 7 МИЛЛИОНОВ записей, и файл был сжат до 184 МБ. Время, которое потребуется, чтобы набрать около 2 ГБ, - это больше, чем я готов вложить!

В конце концов я ушел, набрав всего 700K 7 МИЛЛИОНОВ записей, и файл был сжат до 184 МБ. Время, которое потребуется, чтобы набрать около 2 ГБ, просто больше, чем я готов вложить!

12
ответ дан 1 December 2019 в 09:33
поделиться

Мы не обязательно говорим здесь о теоретических ограничениях, мы говорим о реальных ограничениях максимального размера файла 2 ГБ И схемы базы данных.

  • Является ли ваша база данных одной таблицей или несколько?
  • Сколько столбцов в каждой таблице?
  • Каковы типы данных?

Схема находится на равной основе с количеством строк при определении того, сколько строк вы можете иметь.

Мы использовали Access MDB для хранить экспорт данных MS-SQL для статистического анализа некоторыми нашими корпоративными пользователями. В этих случаях мы экспортировали нашу основную структуру таблицы, обычно четыре таблицы с 20–150 столбцами, варьирующимися от ста байтов в строке до более 8000 байтов в строке. В этих случаях мы столкнемся с несколькими сотнями тысяч строк данных, допустимых для PER MDB, чтобы мы их отправили.

Так что я просто не думаю, что у этого вопроса есть ответ в отсутствие вашей схемы.

1
ответ дан 1 December 2019 в 09:33
поделиться

Как утверждали другие, это комбинация вашей схемы и количества индексов.

У друга было около 100000000 исторических цен на акции, ежедневных котировок закрытия, в MDB, который приблизился к пределу в 2 ГБ.

Он снял их, используя код из статьи базы знаний Microsoft. Я был довольно удивлен, что какой бы сервер он ни использовал, он не отключил его после первых 100 000 записей.

Он мог просмотреть любую запись менее чем за секунду.

4
ответ дан 1 December 2019 в 09:33
поделиться

Прошло несколько лет с тех пор, как я последний раз работал с Access, но файлы базы данных большего размера всегда вызывали больше проблем и были более подвержены повреждению, чем файлы меньшего размера.

Если только файл базы данных только не создается. доступ к которому осуществляется одним человеком или хранится в надежной сети, вы можете обнаружить, что это проблема до того, как будет достигнут предел размера базы данных в 2 ГБ.

2
ответ дан 1 December 2019 в 09:33
поделиться
Другие вопросы по тегам:

Похожие вопросы: