Visualizzazione dei risultati da 1 a 2 su 2
  1. #1
    Utente di HTML.it
    Registrato dal
    Jan 2007
    Messaggi
    595

    Conflitto tra i5_num_rows e clausola WITH

    Utiulizzo PHP su AS400
    Ho appena verificato che l'utilizzo della funzione i5_num_rows va in errore se nello statement SQL è presente la clausola WITH, come si può vedere da questo sorgente
    Codice PHP:
    $sql 
    WITH tb_dac AS (SELECT * FROM rmcdac01l1 WHERE cdalli = 277566) 
    SELECT t1.azabch AS cdctrt, t1.azauce AS cdalli, t2.dtcetr 
    FROM ceazrel0 AS t1 
    LEFT JOIN tb_dac AS t2 ON (t1.azabch = t2.cdctrt) 
    WHERE azaenm = 277566"
    ;         
    $res i5_query($sql);         
    $num i5_num_rows($res);         
    echo 
    "First-$num: ";print_r(i5_error());echo "
    "
    ;         
    $sql 
    SELECT t1.azabch AS cdctrt, t1.azauce AS cdalli, t2.dtcetr 
    FROM ceazrel0 AS t1 
    LEFT JOIN rmcdac01l2 AS t2 ON (t1.azabch = t2.cdctrt) 
    WHERE    azaenm = 277566"
    ;         
    $res i5_query($sql);         
    $num i5_num_rows($res);         
    echo 
    "Second-$num: ";print_r(i5_error());echo "
    "

    Che restituisce questo output
    codice:
    First-: Array ( [0] => -199 [1] => 1 [2] => 42601 [3] => Parola chiave AS non prevista. Token validi: FULL LEFT CROSS INNER RIGHT EXCEPTION. [num] => -199 [cat] => 1 [msg] => 42601 [desc] => Parola chiave AS non prevista. Token validi: FULL LEFT CROSS INNER RIGHT EXCEPTION. ) 
    Second-2: Array ( [0] => 0 [1] => 0 [2] => [3] => [num] => 0 [cat] => 0 [msg] => [desc] => )
    Come potete vedere il primo utilizzo dell'istruzione i5_num_rows da un errore e la variabile $num non è valorizzata, mentre nel secondo caso l'istruzione funziona perfettamente

    Tenete presente che entrambi gli statement SQL sono stati provati direttamente su AS400 e funzionano correttamente e che sono stati anche provati in PHP e funzionano correttamente (eccezion fatta per l'istruzione i5_num_rows)

  2. #2
    Utente di HTML.it
    Registrato dal
    Jan 2007
    Messaggi
    595
    Nessuno? Accidenti!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.