Простой способ разбить большой стол в MS Access - PullRequest
2 голосов
/ 06 июня 2011

У меня есть таблица в базе данных MS Access 2010, и ее легко разбить на несколько таблиц. Однако я не знаю, как это сделать, и все еще храню все данные вместе. Кто-нибудь знает простой способ сделать это?

Ответы [ 7 ]

1 голос
/ 11 июня 2011

В итоге я написал несколько запросов на обновление и добавление для создания небольших таблиц и синхронизации всех данных.

0 голосов
/ 29 декабря 2014

Возможно, это не самый искусный способ сделать это, но я решил похожую проблему следующим образом:

a) Процедура, которая создает новую таблицу с помощью SQL: CREATE TABLE t002 (ID002 INTEGER PRIMARY KEY, CONSTRAINT SomeName FOREIGN KEY (ID002) REFERENCES t001(ID001)); Обе таблицы связаныдруг другу через внешний ключ.

b) Процедура, которая добавляет необходимые поля в новую таблицу (t002).В следующем примере кода давайте используем только одно поле и назовем его [MyFieldName].

c) Процедура добавления всех значений поля ID001 из таблицы t001 в поле ID002 в таблице t002 через SQL: INSERT INTO ID002 (t002) SELECT t001.ID001 FROM t001;

d) Процедура для переноса значений из полей в t001 в поля в t001 через SQL: UPDATE t001 INNER JOIN t002 ON t001.ID001 = t002.ID002 SET t002.MyFieldName = t001.MyFieldName;

e) Процедура удаления (удаления) соответствующих полей в таблице t001,через SQL: ALTER TABLE t001 DROP COLUMN MyFieldName;

f) Процедура, которая вызывает их всех один за другим.Имена полей вводятся в процесс в качестве параметров при вызове процедуры f.

Это довольно сложная кодировка, но она сделала всю работу за меня.

0 голосов
/ 20 августа 2014

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

0 голосов
/ 07 ноября 2012

В Microsoft Access 2012, Инструменты для баз данных, Анализ таблицы. Я использую мастер для разделения большой таблицы на несколько нормализованных таблиц. Надеюсь, это поможет.

0 голосов
/ 10 июня 2011

Где у вас проблемы с мастером анализатора таблиц?Возможно, вам удастся обойти проблему, с которой вы столкнулись.

Однако, если мастер анализа таблиц не работает, вы можете также рассмотреть тактику, описанную в http://office.microsoft.com/en-us/access-help/resolve-and-help-prevent-duplicate-data-HA010341696.aspx.

0 голосов
/ 06 июня 2011

Не уверен, что вы подразумеваете под split up into multiple tables.

Две таблицы имеют одинаковую структуру? Вы хотите разделить таблицу на две части ... значит, если в исходной таблице есть поля A, B, C, D ... тогда вы хотите разделить ее на Table1: A, B и Таблица 2: C, D.

В любом случае, я немного погуглил, и ссылки ниже могут дать то, что вы ищете. Проверьте их.

Разделить таблицу на связанные таблицы (MDB)

Насколько сложно разбить таблицу в Access на две меньшие таблицы?

0 голосов
/ 06 июня 2011

Вы должны перейти на другую систему баз данных, такую ​​как MSSQL, mySQL.Вы не можете сделать в репликации MsAccess ...

...