Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Копирование из таблицы в таблицу поля, одновременно допускающего несколько значений. / 9 сообщений из 9, страница 1 из 1
15.11.2016, 19:49
    #39347862
zybrra
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Копирование из таблицы в таблицу поля, одновременно допускающего несколько значений.
Добрый день, необходимо производить копирование данных из одной таблицы в другую, среди них есть одно поле, одновременно допускающие несколько значений. Проблема в том, что функция INSERT INTO ругается на это поле и его не копирует! Как можно еще перенести эти данные?
...
Рейтинг: 0 / 0
15.11.2016, 20:45
    #39347902
ИВП.
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Копирование из таблицы в таблицу поля, одновременно допускающего несколько значений.
zybrra, это какого же типа поле?
...
Рейтинг: 0 / 0
16.11.2016, 10:39
    #39348138
zybrra
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Копирование из таблицы в таблицу поля, одновременно допускающего несколько значений.
Поле, одновременно допускающие несколько значений, представляет собой поле со списком, только не с единичным выбором, а флажками можно выбрать все необходимые варианты.
В таблице все эти варианты хранятся в одном поле через точку с запятой.
Поля, одновременно допускающие несколько значений, используются в случаях, когда нужно выбрать и сохранить несколько вариантов, не создавая базу данных с более сложной структурой.
...
Рейтинг: 0 / 0
16.11.2016, 10:39
    #39348139
zybrra
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Копирование из таблицы в таблицу поля, одновременно допускающего несколько значений.
Все было здорово до того момента пока не понадобилось копировать эту запись! INSERT INTO с этим не справляется, что подтверждает и Хелп МС, через INSERT INTO можно скопировать только одно определенное значение поля, но не весь набор. Может кто-то что-то подскажет, как можно еще скопировать данные!?
...
Рейтинг: 0 / 0
16.11.2016, 10:46
    #39348147
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Копирование из таблицы в таблицу поля, одновременно допускающего несколько значений.
zybrraМожет кто-то что-то подскажет, как можно еще скопировать данные!?Избавьтесь от этой [censored] Майкрософтовской нашлёпки и сделайте нормальную структуру - таблица значений и таблица связей.
...
Рейтинг: 0 / 0
16.11.2016, 10:58
    #39348167
11222333444
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Копирование из таблицы в таблицу поля, одновременно допускающего несколько значений.
ТС пытается с помощью нормального инструмента обрабатывать ненормальные поделки.
...
Рейтинг: 0 / 0
16.11.2016, 11:06
    #39348180
Agapov_stas
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Копирование из таблицы в таблицу поля, одновременно допускающего несколько значений.
...
Рейтинг: 0 / 0
16.11.2016, 12:23
    #39348286
Панург
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Копирование из таблицы в таблицу поля, одновременно допускающего несколько значений.
zybrraКак можно еще перенести эти данные?Можно кодом. Открываешь каждую таблицу/запрос, как набор данных и вставляешь эти данные в цикле. Многозначные поля обрабатываешь, как вложенные наборы данных. Как-то так...
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
Dim rstDst As DAO.Recordset, rstSrc As DAO.Recordset
Dim rstChild As DAO.Recordset

Set rstDst = CurrentDb.OpenRecordset("ТаблицаПриёмник")
Set rstSrc = CurrentDb.OpenRecordset("ТаблицаИсточник")
    Do Until rstSrc.EOF
        rstDst.AddNew
        '...тут ещё какие поля копируем
        Set rstChild = rstSrc.Fields(5).Value 'набор записей из поля ТаблицаИсточник
            With rstDst.Fields(5).Value 'набор записей из поля ТаблицаПриёмник
                    Do Until rstChild.EOF
                        .AddNew
                        .Fields(0) = rstChild.Fields(0)
                        .Update
                        rstChild.MoveNext
                    Loop
                Set rstChild = Nothing
            End With
        rstDst.Update
        rstSrc.MoveNext
    Loop
rstSrc.Close
Set rstSrc = Nothing
rstDst.Close
Set rstDst = Nothing
...
Рейтинг: 0 / 0
16.11.2016, 12:34
    #39348294
MrShin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Копирование из таблицы в таблицу поля, одновременно допускающего несколько значений.
zybrra,
Поддержу товарищей, как можно быстрее избавьтесь от полей такого типа, ничего кроме головной боли они не дадут, они были сделаны в основном для приложений, работающим с Sharepoint.
Обычный SQL не будет работать с такими полями. Для работы с ними используйте DAO.Recordset2. просто DAO.Recordset имеет очень ограниченную поддержку этих полей.
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Копирование из таблицы в таблицу поля, одновременно допускающего несколько значений. / 9 сообщений из 9, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]