Używając jednego TADOQuery
I wyciągnąć rekordy z dwóch różnych tabel za pomocą lewe sprzężenie zewnętrzne:TADOQuery Dołącz tabele - Insert Usuń rekordy od wyniku
Select M*, D.* from Courier M Left outer join Courier_VT D on M.Courier_Identifier = D.FK_Courier_Identifier
używam TDBGrid
z powodzeniem po aktualizacji pola do mojego MSSQL DB .
Ponieważ istnieje odniesienie klucz obcy (FK_Courier_Identifier
z Courier_Identifier
) pojawia się błąd, kiedy wstawić rekord,
nie można wstawić wartość null w kolumnie „FK_Courier_Identifier”, stół Courier_VT; kolumna nie zezwala na wartości null
ale płyta jest zamieszczona w tabeli Courier, wiem, że muszę przypisać do FK_Courier_Identifier
Courier_Identifier
przed wysłaniem, ale nie jak i gdzie to zrobić
Jak zrobić wstawiamy \ Usunąć rekordy w tym scenariuszu? Czy można osiągnąć przy użyciu pojedynczego TADOQuery
?
Możesz użyć własności dynamicznej ADO "Unikalna tabela". możliwy duplikat [tutaj] (http://stackoverflow.com/questions/7981718/adodataset-deleting-z-joined-table). jednak nie jestem pewien, czy część 'Insert' \' Update' będzie działać (nie mogę tego teraz zweryfikować). I uważam, że musisz podać 'FK_Courier_Identifier' na' BeforePost'. – kobik