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

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

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 11.07.2013, 20:46   #1
Fahnrich
Пользователь
 
Регистрация: 08.07.2013
Сообщений: 10
По умолчанию Добавление данных в связанную таблицу.

Есть sql-база, подцепленная к Delphi методами DBExpress.
Необходимо внести данные в таблицу tab1, значения которой зависят от значений таблицы tab2.
Зависимость идет по первому значению - т.е. результат значения 1 мы берем из второй таблицы.
Команда подобного типа
form5.SimpleDataSet6.dataset.Comman dText:='insert into [имя таблицы] ([поле1],[поле2],[поле3]) values (:пар1, :пар2, :пар3)' ; вызывает сообщение вида 'разрушительный сбой' и направляет в ассемблерные коды.
Вопрос такой: Каким образом можно заполнить связанное значение :пар1, чтобы подобной проблемы не возникало?
Fahnrich вне форума Ответить с цитированием
Старый 11.07.2013, 20:55   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Именно при выполнении команды? Ты трассировал программу?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 11.07.2013, 21:01   #3
Fahnrich
Пользователь
 
Регистрация: 08.07.2013
Сообщений: 10
По умолчанию

Именно при выполнении команды. Добавление в несвязанную таблицу нормально работает, в связанную - вызывает то разрушительный сбой, то пытается добавлять со второго значения (в связанную ячейку - ничего, во вторую- первое значение и т.д.) и естественно ругается на несоответствие типов.
Fahnrich вне форума Ответить с цитированием
Старый 11.07.2013, 21:20   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Сложно сказать...
Избегаю работать с Экспрессом, а при AV однозначно стоит пошаговки делать.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 11.07.2013, 21:21   #5
Fahnrich
Пользователь
 
Регистрация: 08.07.2013
Сообщений: 10
По умолчанию

Там точно какие-то траблы именно с добавлением в зависимое поле, но как это обойти я к сожалению не в курсе.
Fahnrich вне форума Ответить с цитированием
Старый 11.07.2013, 21:24   #6
Yurk@
Участник клуба
 
Аватар для Yurk@
 
Регистрация: 19.12.2007
Сообщений: 1,100
По умолчанию

а ты покажи стуктуру зависимых полей?
может в какое-то поле как-раз и нельзя добавлять т.к. оно есть ключем
На форуме: Помогаю за спасибо
ICQ\Skype: Это моё личное время ...
Yurk@ вне форума Ответить с цитированием
Старый 11.07.2013, 21:29   #7
Fahnrich
Пользователь
 
Регистрация: 08.07.2013
Сообщений: 10
По умолчанию

Зависимое поле является внешним ключем и первичным ключем, при заполнении "вручную" берется значение из связанной таблицы, а мне нужно это как-то программно сделать.
Вот sql-скрипт таблицы, нужные поля, которые отказываются заполняться - `Postavka_Date`,`Lekarstva_Name`.

CREATE TABLE `punct1` (
`Postavka_Date` date NOT NULL,
`Lekarstva_Name` varchar(30) NOT NULL,
`Edizm_Edizm` varchar(20) NOT NULL,
`Kol` int(10) unsigned NOT NULL,
`Datesrg` date NOT NULL,
`Cena` double NOT NULL,
PRIMARY KEY (`Postavka_Date`,`Lekarstva_Name`),
KEY `Edizm_Edizm` (`Edizm_Edizm`),
KEY `Lekarstva_Name` (`Lekarstva_Name`),
CONSTRAINT `punct1_ibfk_1` FOREIGN KEY (`Postavka_Date`) REFERENCES `postavka` (`Date`) ON DELETE NO ACTION ON UPDATE NO ACTION,
CONSTRAINT `punct1_ibfk_2` FOREIGN KEY (`Edizm_Edizm`) REFERENCES `edizm` (`Edizm`) ON DELETE NO ACTION ON UPDATE NO ACTION,
CONSTRAINT `punct1_ibfk_3` FOREIGN KEY (`Lekarstva_Name`) REFERENCES `lekarstva` (`Name`) ON DELETE NO ACTION ON UPDATE NO ACTION
)
Fahnrich вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ошибка при добавлении во 2-ую связанную таблицу paves БД в Delphi 0 26.12.2012 07:15
Вставка втроки в связанную эксель таблицу 95979 Microsoft Office Access 1 13.02.2012 12:19
Добавление данных в таблицу slai SQL, базы данных 1 13.12.2010 16:33
Добавление записи через список в связанную таблицу(при связи с Access) megaten БД в Delphi 5 17.05.2009 15:57