Форум: "Начинающим";
Текущий архив: 2009.05.24;
Скачать: [xml.tar.bz2];
ВнизК SQL-Server через ADO Найти похожие ветки
← →
Alex112 (2009-04-05 23:27) [0]Пытаюсь работать с SQL-Server, используя ADO. В свойстве Command Text компонента ADODataset пишу:
select * from Table1 t1, Table2 t2
where t2.Table1_ID = t1.ID
Связываю ADODataset через DataSource c DBGrid. Поле ID в Table1 автоинкрементное. Задаю в сетке значения полей и делаю Post. Получаю исключение, говорящее о том, что поле t2.Table1_ID имеет значение null. Как это сделать по-человечески, без лишних телодвиженией?
Спасибо.
← →
И. Павел (2009-04-06 08:18) [1]select * from Table1 t1, Table2 t2
where isnull(t2.Table1_ID, 0) = t1.ID
← →
ЮЮ © (2009-04-06 12:02) [2]>Поле ID в Table1 автоинкрементное.
А в Table2 Table1_ID ключевое поле? Т.е. связь 1..0(1) ?
Попробуй так
select *
from
Table1 t1
LEFT JOIN Table2 t2 ON t2.Table1_ID = t1.ID
>Как это сделать по-человечески, без лишних телодвиженией?
В TDbGrid "по-человечески" сложновато работать с двумя связанными таблицами.
← →
Ega23 © (2009-04-06 12:03) [3]
select * from Table1 t1, Table2 t2
Расстрелять из пушки за такое.
← →
ЮЮ © (2009-04-06 12:08) [4]
> Расстрелять из пушки за такое.
Table2.Table1_ID - зато никакое шифрование не нужно с такими именованиями сущностей и атрибутов :)
← →
Anatoly Podgoretsky © (2009-04-06 12:08) [5]
> Получаю исключение, говорящее о том, что поле t2.Table1_ID
> имеет значение null.
Не верю
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2009.05.24;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.008 c