Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    rs.update funziona solo al primo

    ciao, lavoro su mysql

    in una pagina ho il seguente codice:


    codice:
    'connessione già aperta
    sql = "SELECT * FROM linee"
    Set rs = Server.CreateObject("ADODB.Recordset")
    rs.Open sql, conn ,3,3
    rs.addnew
    rs("nome")=request.form("nome")
    rs.update
    chiaramente alla pagina si arriva tramite un form posto in un'altra pagina che ha il campo nome e passa le variabili con post

    il problema è che se la tabella "linee" è vuota il codice aggiunge in maniera corretta il nuovo record, ma, dopo che la tabella contiene quel record e si rilancia il codice per aggiungere un nuovo record lo script restituisce il seguente errore:

    Microsoft OLE DB Provider for ODBC Drivers error '80004005'

    [MySQL][ODBC 3.51 Driver][mysqld-5.0.45-community-log]Duplicate entry '' for key 1

    /ortafood/admin/addlinee.asp, line 25

    dove la line 25 è quella dell'istruzione rs.update

    Sapete darmi una soluzione?

    grazie a tutti

    Rik
    Parafarmacia online, tantissimi prodotti tutti in un click

  2. #2
    prima controlli che la variabile nome sia valorizzata e poi la inserisci nel db utilizzado la query di insert into

    codice:
    'connessione già aperta
    
    nome=request.form("nome")
    if nome<>"" then
     sql="insert into linee (nome) values ('" & nome & "')"
     conn.execute(sql)
    end if


    ciao

  3. #3
    Grazie... funziona anche così

    il problema pero era che non avevo assegnato l'indice al db.. che sbadato

    grazie lo stesso
    Parafarmacia online, tantissimi prodotti tutti in un click

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.