Форум программистов, компьютерный форум, киберфорум
Microsoft Access
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/15: Рейтинг темы: голосов - 15, средняя оценка - 4.60
1 / 1 / 0
Регистрация: 12.02.2013
Сообщений: 22

Добавление записи с проверкой

11.12.2006, 16:39. Показов 3100. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Задача типа:

Есть какая-то таблица и к ней форма, через форму в таблицу добавляются текстовые данные, например поставщики (названия предприятий), какое решение лучше всего применить, чтобы после введения данных в поля и нажатия в форме на кнопушку "Добавить" была произведена проверка на наличие подобных записей в таблице. Т.е. при отсутствии подобной записи производилось добавление, а при присутствии оно не производилось и "выскакивало" окно предупрежденя.



Если не трудно поясните как можно детальнее.



ЗЫ: заранее извиняюсь если пояснил путано, в данной области пока полный "баран". В поиске по форуму пытался чтонибудь отыскать, но он толи не работает, толи мне не повезло.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
11.12.2006, 16:39
Ответы с готовыми решениями:

Запрос на добавление с проверкой даты
Здравствуйте. Имеются 2 таблицы "Таблица1" и ее копия "Архив" В Таблице1 есть различные поля + поле в котором вводится дата (тип данных...

Добавление данных в таблицу с проверкой на дубликаты
Добрый день. Просьба помочь. Есть бд, в которой есть перекрестный запрос Pick by zones. Данные из него посредством запуска запроса на...

БД с вводом данных и проверкой на повторяющиеся записи
Здравствуйте! Помогите пожалуйста, в Accesse давно очень работал, в институтские годы, многое забыто. Есть задача, три таблицы в первой...

3
slamer
11.12.2006, 17:32
Можно например так:
На событие Click кнопки делаем следующее -
1) Объявляем объект rst, тип - Recordset ( или ADO.Recordset для SQL Server )
2) Пишем запрос на выборку из таблицы ( Select * From MyTable Where ...), где в условии Where пишем сравнение полей таблицы с полями формы.
3) Заполняем rst - Set rst = CurrentDB.OpenRecordset( "Запрос на выборку" )
4) Проверяем наличие записей в rst ( If rst.RecordCount > 0 then ) и если записи есть, то выдаем предупреждение.
ЗЫ: А лучше бы сделать в таблице составной ключ по оснавным полям, тогда при добавлении такой же записи ACCESS сам не даст вставить запись.
snov
11.12.2006, 23:20
А еще можно использовать BeginTransaction и CommitTransaction для гарантированного добавления записей =)
7 / 7 / 1
Регистрация: 06.12.2006
Сообщений: 329
12.12.2006, 14:30
На выбор, одно из двух:

1. В обработчике события Form_BeforeUpdate
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
If Len(Nz(Me![НазваниеПредприятия],""))=0 Then
  MsgBox "Заполните поле 'Название предприятия'"
  Cancel=True
Else
  If Me.NewRecord Or (Me![НазваниеПредприятия].OldValue<>Me! [НазваниеПредприятия]) Then
    If Not IsNull(DLookup("НазваниеПредприятия","ТаблицаПредприятий","НазваниеПредприятия='" & Me![НазваниеПредприятия] & "'")) Then
       MsgBox "Указанное предприятие уже существует"
       Cancel=True
    End If
  End If
End If
2. Задайте для поля НазваниеПредприятия таблицы:

a) Cвойство ValidationRule - Is Not Null

b) Свойство Validation Text - "Заполните поле 'Название предприятия'"

с) Уникальный индекс
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
12.12.2006, 14:30
Помогаю со студенческими работами здесь

Макрос после обновления,с проверкой наличия записи в другой таблице + Логический тип
Здравствуйте. Пишу курсач на аксесе... Есть две таблички: -Студент -Списки на остчисление В студенте есть поле (Количество...

Автоматическое добавление записи в таблицу, после добавления записи в другой таблице
Привет всем! Подскажите, как Access 2010 сделать так, чтобы при добавлении записи в одной таблице, автоматически появлялась запись (одно...

Изменение первой в таблице записи (одного кортежа) при добавление новой записи
Добрый день! При добавлении новой записи через форму ДобСтуд в таблице Студ у первой записи меняется Номер группы. Причем новая запись...

невозможно добавление или изменение записи. Для обеспечения целостности данных необходимо наличие связанной записи в таблице
Помогите, пожалуйста! не могу понять почему при вводе данных в форму выдает ошибку &quot;невозможно добавление или изменение записи. Для...

Невозможно добавление или изменение записи. Для обеспечения целостности данных необходимо наличие связанной записи в таблице
Есть таблица( в базе &quot;БонусВзыск&quot;) в эту таблицу мне нужно записывать данные из двух других (Взыск_планки, Прем_планки). Связь типа ....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru