Visualizzazione dei risultati da 1 a 9 su 9

Discussione: query inserimento dati

  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2007
    Messaggi
    1,171

    query inserimento dati

    Ho una pagina che inserisce dei dati su una abella sqlServer.
    codice:
     set rs=server.createobject("adodb.recordset")
     sql="select * from dati" 
     
     rs.open sql,connECTION1,3,3
     
     'scrivo
     rs.addnew
     rs("utente")=cognome
     rs("INDIRIZZO")=request.servervariables("remote_addr")
     RS("data")=FORMATDATETIME(NOW,0)
        rs.update 
     rs.close
     set rs=nothing
    ma mi da questo errore:
    codice:
    [Microsoft][ODBC SQL Server Driver][SQL Server]Il 
    cursore non include la tabella da modificare oppure la tabella non può essere 
    aggiornata tramite il cursore.

  2. #2
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Non so se addnew è supportato da sqlserver usa inset into
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  3. #3
    Utente di HTML.it
    Registrato dal
    Sep 2007
    Messaggi
    1,171
    ciao,
    cosi mi ha sempre funzionato.
    Solo che da quando ho dovuto cambiare il nome del pc mi da questo problema.
    Anzi mi dava un problema sui database (dovevo aggiungere il server) , ma poi ho fatto:
    EXEC
    sp_addlinkedserver'nome\SQLExpress','SQL Server'

  4. #4
    quindi adesso è tuttapposhto?

  5. #5
    Utente di HTML.it
    Registrato dal
    Sep 2007
    Messaggi
    1,171
    no,
    adesso vedo il server, ma non mi fa salvare i record sulle tabelle

  6. #6
    come ti ha già detto andrea, se usi la INSERT INTO è più sicuro

  7. #7
    Utente di HTML.it
    Registrato dal
    Oct 2014
    Messaggi
    539
    come ti è stato detto "insert into" è sicuramente meglio, ma avendo usato la tua costruzione solo per update, ho voluto provarla anche con insert, ebbene, ti posto il codice simile al tuo, ed il risultato positivo
    codice:
    Set testDB=CreateObject("ADODB.Connection") 
    testDB.ConnectionString="File Name=E:\TEST\testDB.UDL;"
    testDB.Open
    Set RS_periodi = CreateObject("ADODB.Recordset") 
    SQLcmd="select * from PERIODI with (ROWLOCK) where id_periodo>0"
    RS_periodi.CursorLocation = 3 ' adUseClient
    RS_periodi.CursorType  = 3 ' adOpenStatic
    RS_periodi.LockType  = 2 ' adLockPessimistic
    RS_periodi.Open SQLcmd, testDB
    RS_periodi.addnew
    RS_periodi("id_periodo")  =9
    RS_periodi("id_struttura")=9
    RS_periodi("data_inizio") ="2015-05-29 18:01:01"
    RS_periodi("data_fine")   ="2015-05-30 18:01:01"
    RS_periodi.update
    RS_periodi.Close
    set RS_periodi=nothing
    WScript.Quit(0)
    Cattura.PNG
    nel file udl vi è la stringa di connessione ad MS SQL
    Ultima modifica di marino51; 29-05-2015 a 18:46

  8. #8
    Utente di HTML.it
    Registrato dal
    Sep 2007
    Messaggi
    1,171
    Grazie, va bene.
    Adesso dovrei cambiare tutte le mie pagine cosi.
    Non mi spiego perché come ho fatto prima ha sempre funzionato, solo che dopo che ho cambiato il nome al computer dopo aver istallato SqlSErver Express 2005 è successo tutto questo.
    Se disistallo tutto e rifaccio funzionera????

  9. #9
    Utente di HTML.it
    Registrato dal
    Oct 2014
    Messaggi
    539
    ho reso lo script molto più simile al tuo, togliendo la lock nella select e le altre istruzioni per il cursore
    e continua a funzionare
    codice:
    Set testDB=CreateObject("ADODB.Connection") 
    testDB.ConnectionString="File Name=E:\TEST\testDB.UDL;"
    testDB.Open
    Set RS_periodi = CreateObject("ADODB.Recordset") 
    SQLcmd="select * from PERIODI where id_periodo>0"
    RS_periodi.Open SQLcmd, testDB, 3, 3
    RS_periodi.addnew
    RS_periodi("id_periodo")  =99
    RS_periodi("id_struttura")=99
    RS_periodi("data_inizio") ="2015-05-29 18:01:01"
    RS_periodi("data_fine")   ="2015-05-30 18:01:01"
    RS_periodi.update
    RS_periodi.Close
    set RS_periodi=nothing
    WScript.Quit(0)
    controlla bene la open del cursore

    l'idea disinstalla/installa ... non credo che funzioni ma ... se ti costa poco ... prova

    stai usando un utente che non ha le autorizzazioni sulla tabella ?
    Ultima modifica di marino51; 30-05-2015 a 09:24

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.