![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Проблема с Lookup полями в ADO с MS SQL Server [D6, MSSQL]
Nikolai_S © (2003-07-17 15:40:00)MS SQL Server
Использую две таблицы TADOTable: Table1, Table2.
В Table2 есть поля:
Table2ID
Name
В Table1 есть поля:
Table1ID
Table2ID
Name
В Table1 создаю Lookup поле Table2Name, которое ссылается на поле NAME из Table2. Если где-то в таблице Table1 в поле Table2ID записан NULL, то при открытии, редактировании, прокрутке и т.д. возникает ошибка:
Project <X> raised exception class EOleException with message "An unknown error has occurred". Process stopped. Use Step or Run to continue.
Все тоже самое, но в Access работает безотказно.
В чем можнт быть проблема?
Nikolai_S (2003-07-17 16:28:00) [1]Нет, ты немного неправильно понял. Вот более конкретный пример:
Записи таблицы CLASS:
CLASS_ID, CLASS_NAME
1, Класс 1
2, Класс 2
Записи таблицы OBJECT:
OBJECT_ID, CLASS_ID, NAME
1, 1, Объект 1
2, <NULL>, Объект 2
Есть две соответствующие таблицы TADOTable. В таблице Object я создал Lookup поле, ссылающееся на CLASS.NAME по полю CLASS_ID
При открытии, прокрутке, редактировании таблицы Object (TADOTable) и возникает ошибка.
Theoden (2003-07-17 16:15:00) [2]Если я правильно понял ты связываешь по ключу и как уникальная запись может быть NULL? Если тебе не надо выводить записи где у тебя Table2ID NULL, то надо делать LEFT(RIGHT) OUTER JOIN
stone (2003-07-17 16:14:00) [3]Table2Name.LookupCache := True;
Nikolai_S (2003-07-17 16:06:00) [4]???