Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Access
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 16.10.2009, 12:22   #1
маврик
 
Регистрация: 16.10.2009
Сообщений: 6
По умолчанию Как при вводе данных на одной форме - добавить запись на двух связанных таблицах?

Допустим есть таблица "покупатель" (ID, имя) и таблица "покупка" (НомерПокупки, ID, дата). Первичные ключи ID и НомерПокупки соответственно. Таким образом таблицы связаны (у одного покупателя много покупок).
Форма, основанная на запросе, выводит все 4 поля (НомерПокупки, дата, ID, имя). Порядок заполнения полей должен быть именно таким.
Как сделать, чтобы при появлении СТАРОГО (!) покупателя и заполнении этой формы - обе таблицы добавляли бы себе свою запись?
Как сделать, чтобы при появлении НОВОГО (!) покупателя и заполнении этой формы - обе таблицы добавляли бы себе свою запись?
маврик вне форума Ответить с цитированием
Старый 16.10.2009, 19:28   #2
Teslenko_EA
Участник клуба
 
Регистрация: 10.08.2009
Сообщений: 1,796
По умолчанию

Здравствуйте маврик.
Давайте не будем "допускать", а обсудим Вашу задачу и возможность её решения.
"таблицы связаны" - по каким полям установлена связь?
"Порядок заполнения..." - что под этим подразумевается, расположение полей ввода?
"таблицы добавляли бы себе свою запись..." - таблицы, насколько я знаю, не могут "добавить себе" и вообще что либо добавлять, и какую запись Вы считаете "своей"?
эти вопросы возникают после чтения Вашего сообщения, проще будет если Вы выложите архив с наработкой (файлом) только после изучения которого можно давать советы и рекомендации.
Евгений.
Teslenko_EA вне форума Ответить с цитированием
Старый 17.10.2009, 21:14   #3
маврик
 
Регистрация: 16.10.2009
Сообщений: 6
По умолчанию

Цитата:
Сообщение от маврик Посмотреть сообщение
есть таблица "покупатель" (ID, имя) и таблица "покупка" (НомерПокупки, ID, дата). Первичные ключи ID и НомерПокупки соответственно. Таким образом таблицы связаны (у одного покупателя много покупок).
именно так они и связаны. Через ID.

Самая первая задача такая:
Допустим, покупатель новый (его ID не присутствует в "покупателе"). Надо сделать форму, на которой присутствует 4 поля (3 от "покупка" и имя из "покупателя"). Идея такая, чтобы при процессе покупки эти 4 поля заполнялись продавцом. То есть добавлялась запись - 2 поля в таблицу "покупатель" и запись - 3 поля в таблицу "покупка" ( ID таким образом добавляется в обе таблицы).

Вторая задача: приходит покупатель и неизвестно, новый он или старый. Как добавить процесс его покупки?
Третья: сначала продавщица вводит НомерПокупки и дату и только после этого спрашивает покупателя его ID и если он новый, то и его имя.

Последний раз редактировалось маврик; 17.10.2009 в 21:23.
маврик вне форума Ответить с цитированием
Старый 17.10.2009, 23:26   #4
Teslenko_EA
Участник клуба
 
Регистрация: 10.08.2009
Сообщений: 1,796
По умолчанию

Здравствуйте маврик.
Для продолжения занятий с БД и SQL, настоятельно рекомендую ознакомиться: Мартин Грубер Понимание SQL 1.28 Мб, издание "взрослое", но это "Азбука" SQL, и без её "понимания" дальнейшее занятие БД не "перспективны".
Евгений.
Teslenko_EA вне форума Ответить с цитированием
Старый 17.10.2009, 23:41   #5
маврик
 
Регистрация: 16.10.2009
Сообщений: 6
По умолчанию

Здравствуйте Евгений!
Совершенно случайно я кое-что понимаю в запросах.
Но я абсолютный новичок в Аксессе. Не могли бы вы мне по существу ответить что в моих вопросах/формулировках "не так"? Не говоря уже об ответить на сами вопросы?

Последний раз редактировалось маврик; 17.10.2009 в 23:47.
маврик вне форума Ответить с цитированием
Старый 18.10.2009, 16:11   #6
Abrakadabra
Форумчанин
 
Регистрация: 26.04.2008
Сообщений: 487
По умолчанию

Цитата:
Сообщение от маврик Посмотреть сообщение
Совершенно случайно я кое-что понимаю в запросах.
Вашего "кое-что" явно не хватает для понимания основ.
Внимательно отнеситесь к совету Евгения..
Abrakadabra вне форума Ответить с цитированием
Старый 18.10.2009, 20:31   #7
Teslenko_EA
Участник клуба
 
Регистрация: 10.08.2009
Сообщений: 1,796
По умолчанию

Здравствуйте маврик.
После "формулировки" - "связаны. Через ID... ...ID таким образом добавляется в обе таблицы", слова "я кое-что понимаю" вызывают сомнение,
"...ответить на сами вопросы" - это будет возможно только если Вы "выложите архив с наработкой"
Евгений.
Teslenko_EA вне форума Ответить с цитированием
Старый 18.10.2009, 21:54   #8
маврик
 
Регистрация: 16.10.2009
Сообщений: 6
По умолчанию

Здравствуйте Евгений.
Я ей Б-гу не понимаю что тут непонятного. ну или

Связь "один к много": у покупателя может быть много покупок.
А в "покупках" отображается его (покупателя) ID.
Прилагаю файл.
Вместо "покупка" я назвал таблицу "продажа" но это дела не меняет.
Также вместо даты - сумма. Все это мелочи. Причем несущественные.
Я собственно спрашиваю в принципе. Возможно ли ( и если возможно, то как) с одной формы ввести сразу в обе связанные таблицы все данные.
Вложения
Тип файла: zip db.zip (24.9 Кб, 13 просмотров)
маврик вне форума Ответить с цитированием
Старый 19.10.2009, 22:45   #9
Teslenko_EA
Участник клуба
 
Регистрация: 10.08.2009
Сообщений: 1,796
По умолчанию

Здравствуйте маврик.
Отношения (Relation) должны быть не только работоспособны, но и названы корректно.
пожалуйста, повторите задачу без "формулировки" - "обе таблицы добавляли бы себе свою запись"
Евгений.
Вложения
Тип файла: zip db1.zip (22.1 Кб, 20 просмотров)
Teslenko_EA вне форума Ответить с цитированием
Старый 20.10.2009, 00:20   #10
маврик
 
Регистрация: 16.10.2009
Сообщений: 6
По умолчанию

Мне вот стало интересно... Это глум что ли такой?
Если да, то я надеюсь Вам весело и все эти вопросы вы пишите не впустую.
Если же это не глум - я не понимаю, что тут непонятного.
Пожалуйста, перечитайте еще раз все мои формулировки (почему-то это слово Вы ставите в кавычки) и поймите логику всего процесса, а именно: приходит покупатель и надо зафиксировать его покупку. Если он старый (его ID уже присутствует в таблице "покупатели") - надо добавить запись только в одну таблицу, если он новый - надо добавить по записи в каждую из таблиц.
маврик вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как убрать пробел между строчками при вводе данных в ячейке? pisani Microsoft Office Excel 2 20.04.2010 05:51
Выорка данных Select из двух связанных таблиц... hijke БД в Delphi 0 28.10.2008 08:24
Передача данных из одной таблицы в другую, при выборе одной ячейки MickMick Microsoft Office Excel 6 06.10.2008 13:57
проблема с SQL-запросом в связанных таблицах kopernik21187 Общие вопросы Delphi 5 16.09.2008 10:33
преобразование массивов при вводе данных greenkat Microsoft Office Excel 4 28.02.2008 19:21