Odkazy: dibi | API reference

Forum: [česky] [english]

dibi fórum

tiny ‘n’ smart
database layer

Nejste přihlášen(a)

#1 před 2 lety

David Grudl
Administrator
Registrovaný: 8. 2. 2005
Příspěvky: 5548

modifikátor %in pro pole

Před cca rokem jsem do dibi přidal patch upravující chování tak, že prázdné pole ve spojitosti s většinou modifikátorů vygenerovalo NULL – viz Operátor IN s prázdnou množinou. Ukázalo se, že vracení NULL ve všech případech není nejvhodnější, proto jsem patch částečně revertoval a přidal „nový“ modifikátor %in, který NULL generuje pro prázdné pole i nadále.

  • pokud používáte konstrukci WHERE column IN %l', $arr která se na toto chování spoléhá, je potřeba ji nahradit za WHERE column IN %in', $arr
  • pokud používáte konstrukci např. WHERE column IN (%s)', $arr spoléhající se na toto chování, zcela ekvivalentní náhrada neexistuje, zkuste použít opět WHERE column IN %in', $arr
  • modifikátor %in existoval už dříve pro čísla ve smyslu „int nebo NULL“, podobně jako %sn pro řetězce. Tohle chování je zachováno, nicméně přidal jsem pro srozumitelnost aliasy %iN a %sN a ty lze považovat za preferované.

Pokud byste narazili na nějaké problémy, dejte vědět, vyřešíme je.

 

Zápatí