2012-02-09 15 views

risposta

25

È possibile utilizzare IFNULL del vostro database() o simili. Tuttavia, in ColdFusion, le query vengono restituite come stringhe. Data la tua situazione, modo più semplice è quello di verificare la presenza di una stringa non vuota:

<cfif len(student_id)> 

A proposito, non è necessario i segni di cancelletto all'interno di una valutazione: solo quando si utilizza una variabile come un letterale (come ad come quando si stampa)

+6

Piccolo chiarimento, i valori 'null' vengono convertiti in una stringa vuota" "nelle query. – Leigh

+0

questo è corretto e funziona bene –

11

In Adobe ColdFusion 9, si può fare:

<cfif IsNull(student_id)> 
</cfif> 

O quanto si sta facendo il contrario:

<cfif NOT IsNull(student_id)> 
</cfif> 
+0

Se la variabile è il risultato di una query di database, un risultato nullo diventerà una stringa vuota in CF, quindi sarà necessario usare 'len()'. – Roland

2

Sembra che la query recuperi tutti gli studenti e quindi cfloops sui record per trovare i campi student_id che sono NULL.

Sarebbe più efficiente scrivere una query che richiedesse in modo specifico i record che hanno student_id IS NULL.

Il metodo di acquisizione di tutti i record della tabella degli studenti funzionerà benissimo quando si hanno circa 100 studenti. Cosa succede quando viene messo in produzione e ci sono 25.000 studenti?

Problemi correlati