Visualizzazione dei risultati da 1 a 6 su 6

Discussione: impostare campo null

  1. #1

    impostare campo null

    ciao a tutti,

    probabilmente la mia domanda sara' anche stupida ... ma come faccio ad impostare a null un campo i php?

    suppongo che si possa impostare cosi' nell'istruzione di inserto e/o update

    $campo=null

    ... ma se io volessi utilizzare sempre la stessa query e volessi modificare prima si eseguirla il valore del campo $valore?

    nella quesry scriverei cosi':

    $campo=$valore

    mucias gratias!
    "Quand ch’i-j ero ignorant, i cagavo al fond ëd la cort, adess chi soma sivilissā i cagoma ‘nt ëcā !"
    Il nonno di Corrado

  2. #2

    Re: impostare campo null

    [supersaibal]Originariamente inviato da an3a
    ciao a tutti,

    probabilmente la mia domanda sara' anche stupida ... ma come faccio ad impostare a null un campo i php?

    suppongo che si possa impostare cosi' nell'istruzione di inserto e/o update

    $campo=null

    ... ma se io volessi utilizzare sempre la stessa query e volessi modificare prima si eseguirla il valore del campo $valore?

    nella quesry scriverei cosi':

    $campo=$valore

    mucias gratias! [/supersaibal]
    Il null che devi trasferire nel db e' una stringa e non un valore. Valore lo diventera' nel db.

    Per settare un campo a NULL la sintassi e':

    $campo = 'NULL';
    update tabella set campo = $campo -- senza le virgolette.

    INSERT .... VALUES ('', 'campo1', $campo) sempre senza apici.


    Il silenzio č spesso la cosa migliore. Pensa ... č gratis.

  3. #3

    Re: Re: impostare campo null

    [supersaibal]Originariamente inviato da piero.mac
    Il null che devi trasferire nel db e' una stringa e non un valore. Valore lo diventera' nel db.

    Per settare un campo a NULL la sintassi e':

    $campo = 'NULL';
    update tabella set campo = $campo -- senza le virgolette.

    INSERT .... VALUES ('', 'campo1', $campo) sempre senza apici.

    [/supersaibal]
    :master: quindi pero' se il campo che voglio impostare a null e' una data non rimango fregato? ... nel senso che quando e' valorizzato la query deve avere gli apici ... quando non e' valorizzato da quello che mi dici tu non li deve avere ... o sbaglio?

    mucias gratias!
    "Quand ch’i-j ero ignorant, i cagavo al fond ëd la cort, adess chi soma sivilissā i cagoma ‘nt ëcā !"
    Il nonno di Corrado

  4. #4

    Re: Re: Re: impostare campo null

    [supersaibal]Originariamente inviato da an3a
    :master: quindi pero' se il campo che voglio impostare a null e' una data non rimango fregato? ... nel senso che quando e' valorizzato la query deve avere gli apici ... quando non e' valorizzato da quello che mi dici tu non li deve avere ... o sbaglio?

    mucias gratias! [/supersaibal]
    i campi NULL per le date equivalgono al default 0000-00-00 00:00:00, come per i numeri lo 0.

    Non ha senso una data inesistente od un numero inesistente. Se esiste ma non e' valorizzata e' = a zero. NULL e' sempre FALSE e corrisponde a nessun valore. Non sempre e' corretto l'uso di NULL se fai statistiche o conteggi.

    E' un valore a se stante compreso per quanto riguarda la ricerca e per l'aggiornamento. Va usato solo per precise ragioni e deve essere gestito in modo autonomo.

    In altre parole... Lo uso solo per timestamp. Perche' lo valorizza per conto suo.... Mysql suggerisce di usare sempre NOT NULL e lasciarlo vuoto se il caso. Occupa pure meno spazio di NULL. E non ti poni problemi di apici.


    Il silenzio č spesso la cosa migliore. Pensa ... č gratis.

  5. #5

    Re: Re: Re: Re: impostare campo null

    [supersaibal]Originariamente inviato da piero.mac
    i campi NULL per le date equivalgono al default 0000-00-00 00:00:00, come per i numeri lo 0.

    Non ha senso una data inesistente od un numero inesistente. Se esiste ma non e' valorizzata e' = a zero. NULL e' sempre FALSE e corrisponde a nessun valore. Non sempre e' corretto l'uso di NULL se fai statistiche o conteggi.

    E' un valore a se stante compreso per quanto riguarda la ricerca e per l'aggiornamento. Va usato solo per precise ragioni e deve essere gestito in modo autonomo.

    In altre parole... Lo uso solo per timestamp. Perche' lo valorizza per conto suo.... Mysql suggerisce di usare sempre NOT NULL e lasciarlo vuoto se il caso. Occupa pure meno spazio di NULL. E non ti poni problemi di apici.

    [/supersaibal]
    ah ... io pensavo l'opposto e cioe' che null occupasse meno di 0000-00-00 ... grazie mille!
    "Quand ch’i-j ero ignorant, i cagavo al fond ëd la cort, adess chi soma sivilissā i cagoma ‘nt ëcā !"
    Il nonno di Corrado

  6. #6

    Re: Re: Re: Re: Re: impostare campo null

    [supersaibal]Originariamente inviato da an3a
    ah ... io pensavo l'opposto e cioe' che null occupasse meno di 0000-00-00 ... grazie mille! [/supersaibal]
    Beh'.... attenzione.

    I campi temporali e numerici occupano sempre uno spazio fisso nel db. Indipendentemente dal dato inserito. Sono campi fissi, dipendenti solo dal tipo impostato. Per es.:

    INT(2) e INT(10) occupano "sempre" 4 byte. Il numerello impostato serve solo a determinare quanti digit devono essere visualizzati e non la lunghezza del campo stesso. Stessa storia per le date. Una delle prerogative per ottimizzare mysql sono i proprio i campi fissi e NOT NULL.
    Ovviamente un VARCHAR o TEXT trovano ragione alla loro dinamicita' nel fatto che molto dello spazio disponibile potrebbe essere inutilizzato. Non cosi' valida la stessa ragione per i campi temporali o numerici.


    Il silenzio č spesso la cosa migliore. Pensa ... č gratis.

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