|
2 / 2 / 1
Регистрация: 20.07.2017
Сообщений: 218
|
|||||||||||
Автоматическое добавление записей в таблицу. Производительность запросов25.09.2017, 11:40. Показов 1368. Ответов 8
Метки нет (Все метки)
Здравствуйте, Уважаемые форумчане!
Подскажите, пожалуйста как правильно: есть две таблицы (на скриншоте tblPTO и tblOOKS) не связанные друг с другом. Необходимо при изменении определенных полей в таблице tblPTO добавлять (если строка новая) или изменять (если строка не новая) значения в поля таблицы tblOOKS. Какие есть мысли на этот счет: 1. Написать некий код. Я написал вот так (форма ввода данных в таблицу tblPTO):
3. Форма ввода данных tblPTO может быть основана на запросе, в котором соединятся две таблицы. Не понимаю как так сделать. Кроме того, если строить отчет по tblOOKS - мы уже не увидим первоначальных данных. В связи со всем этим назревает вторая часть вопроса, о производительности запросов. Что-то мне подсказывает, что пока в таблице 1000 записей все будет хорошо. Но как только их станет, скажем, 700 000, тогда... Интересует конкретно поиск записи:
0
|
|||||||||||
| 25.09.2017, 11:40 | |
|
Ответы с готовыми решениями:
8
Автоматическое добавление записей в связанную таблицу
Автоматическое добавление записей |
|
26825 / 14505 / 3192
Регистрация: 28.04.2012
Сообщений: 15,782
|
||||||
| 25.09.2017, 15:17 | ||||||
|
На все вопросы не отвечу потому что не понимаю их.
А вот на вопрос о скорости: конечно вместо постоянного обращения к БД, надо применить метод Seek к рекордсету уровня формы, определенному в Load формы. Будет в десятки, если не в сотни раз быстрее. Но на поле Код таблицы tblOOKS должен быть индекс. И тогда код такой
1
|
||||||
|
2 / 2 / 1
Регистрация: 20.07.2017
Сообщений: 218
|
||
| 25.09.2017, 15:23 [ТС] | ||
|
0
|
||
|
26825 / 14505 / 3192
Регистрация: 28.04.2012
Сообщений: 15,782
|
||
| 25.09.2017, 15:30 | ||
|
Да. Рекордсет будет постоянно в памяти, пока открыта форма. Но это первый фактор способствующий быстродействию. Второй это потрясающий метод Seek. Собственно Microsoft и купила FoxBase в том числе для того, чтобы приобрести патент на Seek.
Добавлено через 1 минуту
1
|
||
|
Модератор
6231 / 2909 / 707
Регистрация: 12.06.2016
Сообщений: 7,839
|
|
| 25.09.2017, 15:45 | |
|
Прошу прощения, вижу небольшую опечатку, буковка пропущена:
rst.nomatch
2
|
|
|
2 / 2 / 1
Регистрация: 20.07.2017
Сообщений: 218
|
|
| 25.09.2017, 16:43 [ТС] | |
|
А по первому вопросы не подскажите?
Смысл такой: например в таблице tblPTO заполнили поле Дата1,а в таблице tblOOKS должна появится новая строка, в которой полю ДатаЗС будет присвоено значение Дата1. При изменении Дата1 в таблице tblPTO - необходимо, опять-таки, изменить значение ДатаЗС в таблице tblOOKS.
0
|
|
|
2 / 2 / 1
Регистрация: 20.07.2017
Сообщений: 218
|
|
| 27.09.2017, 12:31 [ТС] | |
|
Up!
0
|
|
|
26825 / 14505 / 3192
Регистрация: 28.04.2012
Сообщений: 15,782
|
||
| 27.09.2017, 15:15 | ||
|
Второе: Вы пишете "При изменении Дата1 в таблице tblPTO - необходимо, опять-таки, изменить значение ДатаЗС в таблице tblOOKS". В какой записи таблицы tblOOKS надо поменять дату, как ее найти? Собственно, если происходит в форме, то все надо делать на событии После обновления (AfterUpdate) поля Дата1. Определяемся, нужна ли вставка новой записи или надо искать по какому-то критерию, создаем новую запись или пишем в имеющейся. Все это удобно делать в рекордсете по таблице tblOOKS. В нем есть поиск, есть вставка и редакция.
1
|
||
|
2 / 2 / 1
Регистрация: 20.07.2017
Сообщений: 218
|
||||||
| 27.09.2017, 15:21 [ТС] | ||||||
|
Всем спасибо!
Сделал вот такую процедурку (можно пинать):
Удаление записи тоже описал. Проверяется наличие значения в Me.idOOKSRec. Если есть (а значит есть строка в tblOOKS) - разговариваем с администратором БД ))
0
|
||||||
| 27.09.2017, 15:21 | |
|
Помогаю со студенческими работами здесь
9
Добавление записей в таблицу и связанную с ней таблицу, с учётом связи Автоматическое добавление в таблицу
Автоматическое добавление данных в таблицу автоматическое добавление данных в таблицу БД Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога
Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
|
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
|
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога
В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
|
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
|
|
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога
Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
|
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
|
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования.
Часть библиотеки BedvitCOM
Использованы. . .
|
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога
SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
|