![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
violation FOREIGN KEY [D5, IB6.x]
IBNovice © (2003-10-30 14:10:00)
Hi all
Есть такой вопрос:
Имеется Главная таблица и еще 4 которые используются для подстановки значений в LookUp поля, используются TIBTable, при попытке сохранить запись выдается ошибка violation FOREIGN KEY constraint (FK_MTable_STREET) on table "MTable", причем ошибка появляется при выборе значения с 8-го и больше (В списке лукап поля, всего значений больше 1000).
Внешние ключи прописаны все одинаково. С другими таблицами ошибка не возникает, записей в других таблицах меньше раза в два.
Может кто-нибудь подскажет в чем может быть ошибка.
IBNovice (2003-10-31 14:54:00) [1]
> ЮЮ © (31.10.03 03:55) [4]
> >причем ошибка появляется при выборе значения с 8-го и больше
> (В списке лукап поля, всего значений больше 1000)
>
> Cкорее всего не к тому полю справочеик прикрутил :-)
именно в этом и была проблема
Johnmen (2003-10-31 09:16:00) [2]
>причем ошибка появляется при выборе значения
Как выбираешь то ?
ЮЮ (2003-10-31 03:55:00) [3]
>причем ошибка появляется при выборе значения с 8-го и больше (В списке лукап поля, всего значений больше 1000)
Cкорее всего не к тому полю справочеик прикрутил :-)
Zacho (2003-10-30 15:54:00) [4]
> MsGuns © (30.10.03 15:48) [2]
От версии IB зависит. :)
А вообще - то же самый inner join, только неявный.
MsGuns (2003-10-30 15:48:00) [5]
>Zacho © (30.10.03 14:21) [1]
Если в гл.таблице поля, связанные со справочниками, ссылаются на эти самые справочники через foreign, то Join не обязательно и даже вредно ;)
Вполне подойдут связки Where (t.id1=t1.id) and (t.id2=t2.id)..
Zacho (2003-10-30 14:21:00) [6]
Хочешь хороший совет ? Не создавай lookup-поля для редактирования, с таким кол-вом записей (больше 1000) - пользователи прсто прибить могут за такое, да и если только для отображения - тормозить будет изрядно. Выкини TIBTable, возьми TIBDataSet и напиши запрос с JOIN"ами.