Databáze > Firebird a Interbase
IBExpert - pár otázok
(1/1)
Stanislav Hruška:
DB FireBird, IBE všetko v Query builder.
--- Kód: --- Text1 :=
'SELECT Flats.FKEntry, Landlords.IDLandlords, Service_Flat.IsService,'+
' IDService_Flat'+
' FROM ((Services'+
' INNER JOIN Service_Flat ON Services.IDServices = Service_Flat.FKService)'+
' INNER JOIN Flats ON Service_Flat.FKFlat = Flats.IDFlats)'+
' INNER JOIN Landlords ON Flats.IDFlats = Landlords.FKFlat'+
' WHERE Flats.FKSVB = '+ IDSVBs +' and IDServices = '+ IDServices;
IBQ(
'SELECT DISTINCT D2.ID1, D2.Caption1, D2.ID2, D2.Caption2, D2.ID3, D2.Caption3,'+
' D1.IsService, D1.IDService_Flat, D2.Street, D2.Nmbr, IDFlats'+
' FROM ('+ Text2 +') AS D2'+
' LEFT JOIN ('+ Text1 +') AS D1'+
' ON (D2.IDLandlords = D1.IDLandlords) AND (D2.FKEntry = D1.FKEntry)'+
' ORDER BY D2.Caption1, D2.Caption2, D2.Caption3');
--- Konec kódu ---
Pod D funkčný kód. Vytvorené v MS Access. IBExpert nie je spokojný (v Query builder):
- nepozná AS. To ma prekvapuje. Ale nevadí to
- Text1. "FROM ((Services" - vadia mu tieto zátvorky. Tvrdil, že neexistuje tabuľka Flats. Vyriešil som to presuntím zátvoriek do jednotlivých JOIN- ov. Tak to on generuje.
- FROM ('+ Text2 +') AS D2. Tu mám dva problémy, ktoré potrebujem vyriešiť.
1 - namiesto Text2 by som mal rád odkaz na SQL v IBE. Kvôli prehľadnosti pri ladení. Neviem ako na to.
2 - "D2.Caption1" nepozná D2. To je vážny problém. Nechce sa mi veriť, že by to tak nemalo fungovať.
Stanislav Hruška:
Všetky problémy boli v syntaxe. Pre mňa dosť skryté.
Ale rád by som vedel ako riešiť ten vnorený "dotaz" v Query builder. Napadlo ma, žeby to mohlo byť pomocou wiev. Je to správna úvaha?
Navigace
[0] Seznam témat
Přejít na plnou verzi