|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
18.08.2009, 20:33 | #1 |
Регистрация: 18.08.2009
Сообщений: 4
|
авт. перенос данных из нескольких столбцов одной таблицы в один столбец другой таблицы
доброго времени суток!
сорри если подобный вопрос обсуждался, в ФАКе и поиском не нашел. Ситуевина: разрабатываю в Access 2007 БД для документации, на основании которой ведутся работы на агрегатах. По задумке есть "таблица 1" которая содержит данные с номерами документов "1" и относящихся к ним документов "2", "3", и "4",статус документов (open или closed) и данные по выполнению (№ агрегата, дата выполнения работы и наработка агрегата при выполнении работы). Есть подчиненные таблицы ("таблица 2", "таблица 3", "таблица 4"), в которых описываются более подробно соответственно документы 2, 3 и 4. Взаимосвязь между документами не прямая, т.е. документу 1 могут соответствовать определенные документы 2, 3 и 4, а могут соответствовать к примеру один только 2 или 2 и 4. Загвоздка в том, что одному документу "1" могут соответствовать до трех документов "2". При этом все документы необходимо "связать", т.к. в дальнейшем необходимо выводить отчеты с развернутыми статусами каждого из четырех типов документов. В "таблице 1" для ввода нескольких номеров документов "2" сделал несколько столбцов. Но как сделать так чтобы данные при вводе в эти несколько столбцов в "таблице 1" автоматически эти данные переносились с один столбец "таблицы 2" отдельными строками? |
18.08.2009, 23:35 | #2 |
Участник клуба
Регистрация: 10.08.2009
Сообщений: 1,796
|
Здравтсвуйте A_ALL.
скорее всего Вам стоит переделать структуру БД. "при вводе в эти несколько столбцов в "таблице 1" автоматически эти данные переносились с один столбец "таблицы 2" ..." - не есть верно, данные должны храниться в одной таблице, во всех других используется только ссылка на них. Но не видя предмет обсуждения - это объяснение "на пальцах". Евгений. P.S."несколько столбцов" в таблицах БД обычно называют полями. |
19.08.2009, 18:51 | #3 |
Регистрация: 18.08.2009
Сообщений: 4
|
вот ссылка на файл.
Пароль: 911 Может глянете, проясниться что к чему. когда придумывал что да как, решил сделать так исходя из того что таблица "EASA" будет содержать большинство данных, таких например как отношение разных документов друг другу, сроки выполнения и другие (думаю нет смысла обо всем писать, так как это специфика тех документов для которых и делаю БД). А более подробное описание документов EO, SB, FAA, ДЛП будет находиться в отдельных таблицах с соответствующими названиями опишу немного подробней, чтобы стал понятен смысл отношений документов к друг другу. "EASA" - документ в котором говорится какую/какие работы необходимо выполнить, на основании какой/каких технологий, когда нужно сделать; "FAA", "ДЛП" - почти тоже самое, но документы издаются разными агенствами, соответственно есть различия в имени, дате издания и т.п. "SB" - описывает пошаговое выполнения одной работы (т.к. "EASA", может требовать выполнения нескольких работ, то соответственно работы будут выполнять по нескольким "SB" ) "EO" - уточняющий и дополняющий документ SB Основная проблемма в том что одному EASA могут соответствовать до трех SB. A каждому SB может соответствовать свой EO. При этом связь между ними должна сохраняться, т.е. если в таблице EASA напишу что работа выполнена, то при выполнения отчета на SB, соответсвующие три SB тоже должны будут значиться как выполненные. Только вот никак не придумаю как можно так сделать. Поэтому пока поставил в таблице EASA только одно поле SB_Ref_1. В последствии должны появиться поля SB_Ref_2 и SB_Ref_3 Последний раз редактировалось A_ALL; 19.08.2009 в 18:55. |
19.08.2009, 21:53 | #4 |
Участник клуба
Регистрация: 10.08.2009
Сообщений: 1,796
|
Здравтсвуйте A_ALL.
я сейчас далеко от дома и не смогу помочь, если Вы не выложите файл БД конвертированный в формат Access 2003. простите на предупредил Евгений. |
23.08.2009, 01:28 | #6 |
Участник клуба
Регистрация: 10.08.2009
Сообщений: 1,796
|
Здравтсвуйте A_ALL.
В БД используется понятие Отношение один ко многим (Relation). При создании такой связи между таблицами вполне возможно проследить изменения в связанных таблицах, но связи созданные Вами стоит подкорректировать. Применение текстовых полей в качестве ключевых не запрещено, но минусов от такой организации гораздо больше чем плюсов. Рекомендую ключевыми полями сделать поля типа Счетчик, поля связи будут иметь тип Длинное целое (Long). После корректировки не составит труда построить запрос отображающий записи "SB" для которых связанные записи "в таблице EASA написано что работа выполнена". В образце я изменил структуру пары Ваших таблиц, после наполнения данными можно их посмотреть в запросах, установив критерии отбора и выбрав необходимые поля использовать как источник для отчета. Евгений. P.S. для получения базовых познаний SQL рекомендую - Мартин Грубер - Понимание SQL.rar (1.28 Мб) - это Азбука(!). Последний раз редактировалось Teslenko_EA; 23.08.2009 в 01:31. |
24.08.2009, 00:36 | #7 |
Регистрация: 18.08.2009
Сообщений: 4
|
Спасибо за помощь, Евгений!
Буду разбираться. Думаю если на форуме есть люди, реально помогающие и дающие дельные советы, то у такого форума есть будущее! Наверняка я делаю много ошибок, т.к. начал изучать access совсем недавно. Уж не обессудте за вопросы, которые для некоторых кажутся примитивными. Книжку обязательно прочту, еще раз спасибо. Единственно что насторожило, это надпись Moskow,1993 Что еще посоветуете для изучения? Последний раз редактировалось A_ALL; 24.08.2009 в 00:38. |
24.08.2009, 21:13 | #8 |
Участник клуба
Регистрация: 10.08.2009
Сообщений: 1,796
|
Здравтсвуйте A_ALL.
не пугайтесь, я не зря написал "это Азбука(!)", буквы изученые в первом классе остаются правильными всегда. Евгений. |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Отбор данных из одной таблицы и создание из них другой!!! | HuLiGaN | Microsoft Office Excel | 16 | 31.03.2009 03:28 |
перенос данных из таблицы 1 в таблицу 2 | AndreyZeus | Microsoft Office Excel | 1 | 20.03.2009 16:02 |
Заполнение одной таблицы данными из другой | melok_s | Microsoft Office Excel | 7 | 20.11.2008 03:56 |
Передача данных из одной таблицы в другую, при выборе одной ячейки | MickMick | Microsoft Office Excel | 6 | 06.10.2008 13:57 |
Копирование данных из одной таблицы в другую! | фЁдОр | БД в Delphi | 18 | 06.01.2008 19:27 |