Subject Re: [firebird-support] Firebirs 2.1 : left join right join full join outer join dont' work !
Author Helen Borrie
At 08:41 PM 1/09/2010, Philipp Franzos wrote:
>Hi Helen
>
>Thanks for trying to help. Here the exact SQL:
>
>SELECT DISTINCT
> PR.SUCHBEGRIFF as Liegenschaft,
> AD.VORNAME,
> AD.NAME1,
> KO.NUMMER,
> KO.TYP
>FROM
> ADRESSE ad,
> ADRESSKATEGORIE ak,
> ADRESSE_ADRESSKATEGORIE aa,
> VERTEILEREINTRAG ve,
> PROJEKT pr
> left outer join KOMMUNIKATION ko on AD.ID = KO.ADRESSE_ID
>WHERE
> AK.SUCHBEGRIFF = 'Hauswart' AND
> AK.ID = AA.ADRESSKATEGORIE_ID AND
> AA.ADRESSE_ID = AD.ID AND
> VE.ADRESSE_ID = AD.ID AND
> VE.VERTEILER_ID = PR.BETEILIGTEVERTEILER_ID AND
> KO.TYP = 'Privat'

OK, first sort out your join syntax. Here you have a mixture of deprecated SQL-89 (implicit inner joins) and the SQL-92 syntax. The outer join means you need the SQL-92 explicit join syntax throughout; and explicit joins require you to use the ON clause to specify join criteria.

Next, understand that this set is not updatable. Read Set's comments to understand why your (presumably Delphi) application is returning the error you quoted. If you are using IBO, there are things you can do to make this set behave as though it were updatable. Ask about that on the IBObjects list, if so.

./heLen