Новый столбец нельзя добавить в базу данных Access - PullRequest
0 голосов
/ 27 ноября 2011

У меня есть таблица базы данных Access с примерно 4 миллионами строк. Что я хочу сделать, чтобы добавить столбец (поле) с типом автонумера с помощью MS Access Design View. Но когда я попытался это сделать, access выдает ошибку и говорит: «Запрос не может быть выполнен. Либо размер запроса больше максимально допустимого (2 ГБ), либо не хватает временного пространства для этого действия». . "

Что у меня есть:

Column1    Column2   .   .   . 
-------    -------   

То, что я хочу иметь:

Number   Column1    Column2  . . . 
------   -------    -------

Что я пробовал до сих пор:

  • Изменить maxLocks для каждого значения файла из реестра.
  • Компакт и восстановление базы данных с помощью Access.

Есть ли способ исправить это? или есть другой способ сделать то, что я пытаюсь сделать?

Ответы [ 3 ]

1 голос
/ 27 ноября 2011

За запрос OP:

Это говорит о том, что вы используете максимальные возможности Access. Проверьте перенос базы данных на что-то другое, возможно, SQLServer или mySQL

1 голос
/ 27 ноября 2011

Попробуйте создать новую таблицу, а затем перенести все из старой таблицы в новую. в конце концов вы можете удалить старое и переименовать новое. если у вас есть отношения, вам нужно будет разобраться и с ними. поскольку автонумер - это новый столбец, я думаю, он еще не задействован ни в одном из них ....

и @jonathan комментарий правильный ... перейдите на SQL Express или сервер SQL (мир MS) или mySQL, если у вас есть поставщик для этого из вашего приложения.

0 голосов
/ 27 ноября 2011

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

При перемещении следует взглянуть на некоторую форму архивирования для очень больших наборов данных.на выделенный сервер это не вариант, например, перемещение данных старше 6 месяцев (временные рамки будут зависеть от того, сколько данных вы добавляете)

Кроме того, при просмотре запроса кажется, что вы можетеЕсли вы хотите добавить поле autonumber для уникальной идентификации ваших записей, в таком случае рекомендуется убедиться, что у вас установлен уникальный идентификатор (первичный ключ) при первом создании таблицы.

Все это в сторонена время вы можете попробовать следующее: Переместите свою базу данных на локальный диск (если его еще нет на одном) с большим количеством свободного места.Убедитесь, что вы работаете на машине с большим количеством оперативной и виртуальной памяти.Выполните сжатие и восстановление вашей базы данных, поскольку это может значительно уменьшить размер вашей таблицы (это может занять некоторое время).Попытайтесь снова добавить свой столбец автонумерации.

...