Visualizzazione dei risultati da 1 a 7 su 7

Hybrid View

  1. #1
    Anche se ti si è risolto da solo, potrebbe essere utile per altri.
    Quando si ha un dubbio se il DBMS sia impostato o meno con il case sensitive (cioè fa differenza o meno tra le lettere maiuscole e minuscole) e non si desisdera che questo accada si può intervenire cambiando il settaggio del DBMS (però magari ad altri che lo sfruttano potrebbe invece interessare che rimanga come era) oppure via SQL si può "trasfomare" etrambe le parti della condizione in maiuscolo (o minuscolo) esempio:

    UPPER(<field>) LIKE '%PIPPO%' --> condiziono al fatto che <field> contenga "PIPPO" se fosse case sensitive e il contenuto di <field> fosse ad esempio "Pippo e Paperino" in questo modo lo troverebbe perché prima di condizionare faccio un UPPER del campo uniformando tutto in maiuscolo; ovviamente poi devo confrontare con un "PIPPO" maiuscolo...
    Se ti stai approcciando all'argomento database dai uno sguardo anche a: SQL, database relazionale, regole di Codd, modello E-R, forme normali, normalizzazione con il mio testo: Semplicemente Database

  2. #2
    ... scusa, come faccio strtolower o strtoupper nel campo descrizione del DB ?
    (descrizione LIKE '%".$splsearch[$i]."%')

    ho messo (descrizione LIKE '%".strtolower($splsearch[$i])."%') or (descrizione LIKE '%".ucfirst($splsearch[$i])."%')

    Il problema sono le parole con caratteri maiuscoli in mezzo... come TeamSystem.

    Grazie.

    Quote Originariamente inviata da smartsql Visualizza il messaggio
    ...ambe le parti della condizione in maiuscolo (o minuscolo) esempio:

    UPPER(<field>) LIKE '%PIPPO%' --> condiziono al fatto che <field> contenga "PIPPO" se fosse case sensitive e il contenuto di <field> fosse ad esempio "Pippo e Paperino" in questo modo lo troverebbe perché prima di condizionare faccio un UPPER del campo uniformando tutto in maiuscolo; ovviamente poi devo confrontare con un "PIPPO" maiuscolo...
    Ultima modifica di Jacqui; 14-02-2014 a 00:05

  3. #3
    Quote Originariamente inviata da Jacqui Visualizza il messaggio
    ... scusa, come faccio strtolower o strtoupper nel campo descrizione del DB ?
    (descrizione LIKE '%".$splsearch[$i]."%')

    ho messo (descrizione LIKE '%".strtolower($splsearch[$i])."%') or (descrizione LIKE '%".ucfirst($splsearch[$i])."%')

    Il problema sono le parole con caratteri maiuscoli in mezzo... come TeamSystem.

    Grazie.
    Potrebbe dipendere dal DBMS che usi (SQL-server, oracle o Myslq etc) ma dovrebbe andare bene per tutti LOWER(descrizione) per portare a minuscolo (il tuo caso dato che confronti con un stringa trasformata in minuscolo).
    Per il maiuscolo puoi usare UPPER(descrizione).
    Se ti stai approcciando all'argomento database dai uno sguardo anche a: SQL, database relazionale, regole di Codd, modello E-R, forme normali, normalizzazione con il mio testo: Semplicemente Database

  4. #4
    Grazie. Entrambi.

    Ho risolto il problema...

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 © 2026 vBulletin Solutions, Inc. All rights reserved.