[6.2.8 / SQLite] Master Details issue when detail SQL contains LIMIT keyword

Discussion of open issues, suggestions and bugs regarding UniDAC (Universal Data Access Components) for Delphi, C++Builder, Lazarus (and FPC)
Post Reply
swierzbicki
Posts: 451
Joined: Wed 19 Jan 2005 09:59

[6.2.8 / SQLite] Master Details issue when detail SQL contains LIMIT keyword

Post by swierzbicki » Mon 23 Nov 2015 14:12

Hello,

My UniQuery have this SQL Query set :

Code: Select all

SELECT 
  :Id_Inventaire as Id_Inventaire,
  :Code_Barre as Code_Barre,
  colis_inventaires_details.Gencod_Article,
  colis_inventaires_details.Code_Article,
  '' as Gencod_Piece,
  '' as Couleur,
  '' as Taille,
  IFNULL(colis_inventaires_details_quantites.Quantite_Pieces, 1) AS Quantite_Pieces,
  1 Nombre_Pieces
FROM
  colis_inventaires_details
  left outer join colis_inventaires_details_quantites on (colis_inventaires_details_quantites.Id_Inventaire   = colis_inventaires_details.Id_Inventaire  )
  
WHERE
  colis_inventaires_details.Gencod_Article = :Gencod_Article AND 
  colis_inventaires_details.Code_Article = :Code_Article AND
  colis_inventaires_details.Id_Inventaire = :Id_Inventaire
LIMIT 1
This UniQuery is linked to an Mastersource. When opening it, UniDAC change the query to :

Code: Select all

SELECT 
  :Id_Inventaire as Id_Inventaire,
  :Code_Barre as Code_Barre,
  colis_inventaires_details.Gencod_Article,
  colis_inventaires_details.Code_Article,
  '' as Gencod_Piece,
  '' as Couleur,
  '' as Taille,
  IFNULL(colis_inventaires_details_quantites.Quantite_Pieces, 1) AS Quantite_Pieces,
  1 Nombre_Pieces
FROM
  colis_inventaires_details
  left outer join colis_inventaires_details_quantites on (colis_inventaires_details_quantites.Id_Inventaire   = colis_inventaires_details.Id_Inventaire  )
  
WHERE
(
  colis_inventaires_details.Gencod_Article = :Gencod_Article AND 
  colis_inventaires_details.Code_Article = :Code_Article AND
  colis_inventaires_details.Id_Inventaire = :Id_Inventaire
LIMIT 1) AND colis_inventaires_details.Gencod_Article = :Gencod_Article AND colis_inventaires_details.Code_Article = :Code_Article 
As you can see, where clause isn't correctly set.

AlexP
Devart Team
Posts: 5530
Joined: Tue 10 Aug 2010 11:35

Re: [6.2.8 / SQLite] Master Details issue when detail SQL contains LIMIT keyword

Post by AlexP » Tue 24 Nov 2015 08:42

Hello,

Thank you for the information, we have reproduced and fixed the issue. This fix will be included in the next version.

Post Reply