Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it L'avatar di Sonikag
    Registrato dal
    Mar 2004
    Messaggi
    2,080

    Problemi inserimento/aggiornamento campo memo

    Ho un campo testo in un db access di tipo Memo.
    Quando inserisco o faccio una modifica mi accetta solo i primi 100 caratteri circa.
    codice:
    string strSQL = "INSERT INTO [NEWS] (Giorno, mese, anno, Titolo, Testo, Foto) VALUES ('" + txtdata1.Text + "', '" + txtdata2.Text + "', '" + txtdata3.Text + "', @titolo, @testo, '" + lf + "')"; 
    
    OleDbCommand cmd = new OleDbCommand(strSQL, conn); 
    
    // parametri 
    OleDbParameter parameter1 = new OleDbParameter("@titolo", OleDbType.VarChar, 128); 
    parameter1.Value = Server.HtmlEncode(txttitolo.Text); 
    cmd.Parameters.Add(parameter1); 
    
    OleDbParameter parameter2 = new OleDbParameter("@testo", OleDbType.VarChar, 128); 
    parameter2.Value = Server.HtmlEncode(txtbtesto.Text); 
    cmd.Parameters.Add(parameter2); 
    
    // connessione ed esecuzione query 
    conn.Open(); 
    cmd.ExecuteNonQuery(); 
    conn.Close();

  2. #2
    perchè non provi senza usare gli oggetti oledbParameter?

    codice:
    string strSQL = "INSERT INTO [NEWS] (Giorno, mese, anno, Titolo,
    Testo, Foto) VALUES ('" + txtdata1.Text + "', '" + txtdata2.Text
    + "', '" + txtdata3.Text + "','"+ Server.HtmlEncode(txttitolo.Text)
    +"','"+ Server.HtmlEncode(txtbtesto.Text) +"','" lf + "')"; 
    
    
    OleDbCommand cmd = new OleDbCommand();
    cmd.CommandText = strSQL;
    cmd.Connection = conn;
    cmd.Connection.Open();
    cmd.ExecuteNonQuery();
    
    conn.Close();
    If you want a picture of the future, imagine a boot stamping on a human face-for ever.

  3. #3
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    dunque, ho letto e mi sono spaventato, dato che sto facendo una cosa simile ma ho provato a metter in un campo memo 65000 caratteri e li mette

    metto un po' di codice se ti servisse:
    codice:
    sql = "UPDATE PROTOCOLLO SET [TESTO_PARERE] = ? WHERE [ID_DOCUMENTO] = ?  "
    ***
                Parametro = New OleDbParameter("TESTO_PARERE", OleDbType.VarChar, 65535)
                Parametro.Value = StringNullToDBNull(TestoParere)
                comando.Parameters.Add(Parametro)
    Pietro

  4. #4
    Sarebbe meglio dichiarare anche nella stringa sql il nome del parameter utilizzato:
    codice:
    UPDATE PROTOCOLLO SET [TESTO_PARERE] = @testo_parere WHERE [ID_DOCUMENTO] = @id_documento
    Ma che funzione è StringNullToDBNull?

    Ciao
    AZ [Microsoft - .NET MVP]
    Mia Home page: http://ciclismo.sitiasp.it
    Asp.Net community: http://www.aspitalia.com
    Il mio blog: http://blogs.aspitalia.com/az

  5. #5
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    Originariamente inviato da AndreaZani
    Sarebbe meglio dichiarare anche nella stringa sql il nome del parameter utilizzato:
    codice:
    UPDATE PROTOCOLLO SET [TESTO_PARERE] = @testo_parere WHERE [ID_DOCUMENTO] = @id_documento
    Ma che funzione è StringNullToDBNull?

    Ciao
    codice:
        '--------------------------------------------------------
        'Converte una stringa nulla in DBNull
        '--------------------------------------------------------
        Public Function StringNullToDBNull(ByVal s$) As Object
            If (s = "") Then
                Return DBNull.Value
            Else
                Return s
            End If
        End Function
    me la sto trascinando dai tempi di asp :master:

    Per il resto ho sempre visto come ho scritto, per i parametri, in Access. So che a lui importa l'ordine dei parametri e non il nome
    Pietro

  6. #6
    Non ho mai utilizzato i parameter con i "?" ma ho sempre inserito i nomi per evitare qualsiasi problema di ordine di inserimento.

    Hai provato a dichiarare esplicitamente i nomi delle variabili?

    Ciao
    AZ [Microsoft - .NET MVP]
    Mia Home page: http://ciclismo.sitiasp.it
    Asp.Net community: http://www.aspitalia.com
    Il mio blog: http://blogs.aspitalia.com/az

  7. #7
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    Originariamente inviato da AndreaZani
    Non ho mai utilizzato i parameter con i "?" ma ho sempre inserito i nomi per evitare qualsiasi problema di ordine di inserimento.

    Hai provato a dichiarare esplicitamente i nomi delle variabili?

    Ciao
    A dire la verità non ho mai provato. :master: Mi sono fidato di quanto riportato in Letteratura, ...
    Pietro

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.