Консультация № 54850
09.09.2006, 20:29
0.00 руб.
0 5 3
Уважаемые эксперты! Если можно, помогите, пожалуйста!
Есть программный продукт, созданный на Delphi, для ввода стат. карточек. Номер карточки (ключевое поле) создается автоматически, при вводе новой, по порядку. Сама база состоит из нескольких десятков таблиц. Могу ли я посредством SQL облегчить себе задачу ввода, если нужно ввести дополнительно, к примеру, 100 новых карточек, информация в которых почти во всех полях повторяется, и при первичном вводе находится только в одной таблице базы данных.

Обсуждение

Неизвестный
09.09.2006, 21:19
общий
это ответ
Здравствуйте, Muhurova!
Конечно. Самой простой способ - это выставить "значения по умолчанию" для соотвествующих столбцов таблицы. Второй - если есть исходник проекта, в соответствующие объекты вставлять автоматически данные. Третий - создать хранимую процедуру (если у СУБД есть такое) и в ней присваивать повторяющиеся значения, а те что отличаются передавать в качестве параметров.
В свободное время могу помочью, при более детальной раскладке. Так что пишите, если что :)
Удачи!
Неизвестный
09.09.2006, 23:14
общий
Спасибо. Вся проблема в том, что я не разработчик этого проекта, а обычный пользователь, исходников у меня нет. Просто с помощью SQL у меня получается вставить только одну запись в таблицу, для вставки следующей меняю номер, и так далее. Я имела в виду, нельзя ли добавить какое-то количество новых записей в таблицу только одним запросом. Извините, если объясняю некорректно.
Неизвестный
09.09.2006, 23:29
общий
это ответ
Здравствуйте, Muhurova!
Да, конечно, с помощью SQL можно вводить любое количество новых записей.
тут надо просто точно знать что и куда записовывать.

Но с другой стороны, если есть готовая и отлаженная хранимая процедура, у которой надо только поменять параметр, наверное проще и надежнее запускать процедуру в цикле нужное количество раз.
я стараюсь где возможно пользоваться уже готовыми процедурами. В этом случае по крайней мере можно быть уверенным, что данные обрабатываются ОДИНАКОВО, то есть по одному алгоритму.
Были ситуации, когда делал руками, ставил неправильную дату без учета какого-то смещенияну или оплату не в той валюте... выявить подобные ошибки будет довольно трудно, поэтому я стараюсь сохранять номера записей, которые исправлял вручную (по крайней мере полгода).

при необходимости я могу помочь Вам составить циклический вызов процедуры.

с уважением, Игорь
Неизвестный
09.09.2006, 23:44
общий
это ответ
Здравствуйте, Zinaida!
Неизвестно какая СУБД?

Если ты можешь вставить одну запись с помощью SQL, то можно записать последовательность команд в скрипт и изменять необходимые поля, а в БД загнать скрипт целиком.
Для этого нужно немного - чтобы СУБД поддерживала скрипты
Неизвестный
10.09.2006, 00:08
общий
База данных - Paradox, мне не очень понятно, что такое скрипт, если можно, пришлите пример скрипта
Форма ответа