Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2007
    Messaggi
    274

    errore scrittura campo vuoto

    Se nel modulo lascio uno dei campi vuoto mi da questo errore:

    Microsoft OLE DB Provider for ODBC Drivers error '80004005'

    [Microsoft][ODBC Microsoft Access Driver] Field 'Tabella.Campo2' cannot be a zero-length string.

    /pagina.asp, line 171


    codice:
    rs.addnew
    rs(2) = strCampo2
    rs(3) = strCampo3
    rs(4) = strCampo4
    rs(5) = strCampo5
    rs(6) = strCampo6
    rs(7) = strCampo7
    rs(8) = strCampo8
    rs(9) = strCampo9
    rs.update
    La linea 171 è "rs.update"

    Come faccio a far si che se lo lascio vuoto non da errore?

  2. #2
    Potresti impostare la proprieta del campo alla voce "Consenti lunghezza" zero a Sì.
    Se hai access basta che apri il database e fai le modifiche aprendo la tabella in modalità struttura.
    Un altro modo per risolvere il problema potrebbe essere quello di usare IF.
    Cioè se il campo 1 o il campo 2 o il campo 3 o il campo ... è vuoto dai un messaggio di errore, altrimenti esegui l'inserimento.

  3. #3
    Utente di HTML.it
    Registrato dal
    Nov 2007
    Messaggi
    274
    ho optato per la modifica nel db. e funziona.
    Grazie mille!

  4. #4

  5. #5
    Utente di HTML.it
    Registrato dal
    Nov 2007
    Messaggi
    274
    Altro problema simile:

    Campo:
    Tipo dati "numerico";
    Dimensione Campo= Precisione doppia
    Formato= Standard
    Posizioni decimali= 2

    Così impostato, quando vado al modulo ed inserisco i dati e lascio quel campo vuoto mi da errore:

    Provider error '80020005'

    Type mismatch.

    /modifica1.asp, line 24

    dove la linea di errore è la scrittura sul record corispondente:

    rs(10)=request.form("Parziale")

    Posso modificare direttamente il db access affinché lasciando il campo vuoto non mi dia errore?
    Come?

    Ci sono altri modi per superare l'incovenient?

  6. #6
    Anche in questo caso puoi impostare la proprieta del campo alla voce "Richiesto" a No, oppure potresti usare sempre una IF.
    Es:
    Se il campo nome_campo è vuoto scrivi 0 (oppure avverti che il campo è obbligatorio), altrimenti esegui l'inserimento.

  7. #7
    Utente di HTML.it
    Registrato dal
    Nov 2007
    Messaggi
    274
    Ho impostato il campo così:
    Tipo Dati "Numerico"
    Dimensione campo "Precisione doppia"
    Formato "Standard"
    Posizioni decimali "2"
    Richiesto "No"
    Indicizzato "No"
    Valore predefinito ho messo sia "0" che vuoto
    le altre voci sono vuote.

    Ma il problema persiste come sopra.

    Provider error '80020005'

    Type mismatch.

    /modifica1.asp, line 24

    dove la linea di errore è la scrittura sul record corispondente:

    rs(10)=request.form("Parziale")

    dove rs(10) corrisponde al campo numerico.

    In sintesi: sono costretto a scrivere su db? devo per forza mettere almeno "0"? Non è possibile lasciarlo vuoto?

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.