Увеличение базы данных Access разделения

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

x <- c(9, 1:5, 3:7, 0:8)
x
# 9 1 2 3 4 5 3 4 5 6 7 0 1 2 3 4 5 6 7 8 

Если вы хотите пометить вторую и последующие копии

[ 111]

Если вы хотите пометить все значения, которые встречаются два или более раз

as.numeric(x %in% x[duplicated(x)])
# 0 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 0
7
задан Martijn Pieters 6 February 2017 в 20:40
поделиться

4 ответа

Лично я нашел, что мастер увеличения делает очень безнадежное дело определения правильных типов данных. Я составил бы таблицы сам в SQL-сервере с помощью типов данных, я нуждаюсь, затем перемещаю данные в существующие таблицы от Доступа. другое мудрое Вы застрянете с текстовыми данными, когда Вы могли использовать varchar или плавать при реальной необходимости в десятичном числе.

После того как данные были перемещены затем, я удалю таблицы Access и ссылку на таблицы SQL Server.

Ничего не делайте, не имея резервной копии базы данных сначала.

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

Как стандартную паранойю, я просто сделал бы резервную копию существующих файлов и запустил бы Мастер Увеличения на фронтэнде. Если что-нибудь, нежелательный происходит, просто возвращаются изменения путем перезаписи с резервной копией.

0
ответ дан 7 December 2019 в 12:26
поделиться

Я согласился бы с Вашим первым предположением: Вы захотите запустить мастер на бэкенде mdb.

После того как это находится в SQL Server, также как Вы предположили, Вы захотите связать фронтэнд для работы с данными SQL Server. Один способ сделать это должно настроить источник данных ODBC для Вашей новой базы данных SQL Server и выбора это в Диспетчере связанных таблиц.

  1. Откройте Источники данных (ODBC) ярлык: в XP Pro, это находится в Панели управления под Средствами администрирования. (Если Вы не видите его, у Вас, вероятно, нет разрешения создать источник данных, таким образом, необходимо будет работать с сетевыми людьми, чтобы сделать это.) Это откроет ODBC Administrator.
  2. На вкладке File DSN нажмите Add.... Вы будете видеть список доступных драйверов. Выберите SQL Server и нажмите Далее. (Если фронтэнд только используется на Вашей машине, можно создать Систему DSN вместо этого.)
  3. Найдите общее местоположение и назовите свой источник данных.
  4. Нажмите Далее и Конец. Это настроит первую часть источника данных и откроет мастер источника данных SQL Server.
  5. Назовите источник данных и выберите сервер, на который Вы поместили увеличенную базу данных бэкенда.
  6. Остальная часть изменения настроек по мере необходимости (Вы, возможно, не должны изменяться очень, но объем тех изменений, может потребовать второго вопроса), и нажмите до Конца.

После того как Вам настраивали источник данных, затем Добираетесь, Внешние Данные должны дать Вам опцию выбрать его как Ваш источник. (В 2007 можно добраться там от Внешней ленты Данных. Источники данных ODBC доступны под Больше.)

Расшириться немного далее на основе последующих вопросов Matt:

Как Вы делаете это - проектное решение. Я рекомендую увеличить бэкенд mdb, потому что это позволило бы Вам сохранять безотносительно форм, и такой Вы имели в Доступе; я думаю, что это - меньше перехода, если Ваши данные находятся в SQL Server.

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

4
ответ дан 7 December 2019 в 12:26
поделиться

Обновите внешний интерфейс, и он будет импортировать внутренние таблицы перед увеличением размера. Я сделал это неделю назад с успешным результатом.

Однако любые запросы, в которых используется -1 вместо «Да», завершатся ошибкой. Любое полное удаление таблицы в таблицах без первичного ключа завершится ошибкой, и вы получите другое поведение, чем при простом использовании сквозного SQL-запроса для усечения таблицы. Усечение удалит все строки, версия Access может оставить поле пустым.

Также вам нужно будет включить dbSeeChanges везде, где у вас есть набор записей, открывающийся в таблице с типом данных столбца autonumber. SQL меняет их на типы данных Identity, а затем жалуется, прежде чем вы попытаетесь открыть таблицу. Удачи.

0
ответ дан 7 December 2019 в 12:26
поделиться
Другие вопросы по тегам:

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