+ Rispondi al Thread
Visualizzazione dei risultati da 1 a 4 su 4

Discussione: Aggiornare campo in tabella Access con VB6

  1. #1
    L'avatar di Hollywood
    Hollywood non è in linea Scolaretto
    Post
    294

    Aggiornare campo in tabella Access con VB6

    Bene… come da titolo mi chiedono di fare un piccolo programmino per fare quella cosa li!
    E che problema c'è, penso io, eccolo qui:

    codice:
    Dim sSql As String
    Dim stable As String
    Dim stOr As String
    Dim stFin As String
    stable = "tabella"
    stOr = "\\192.168.1.2\Volume_1"
    stFin = "\\192.168.1.50\Rete"
    CN.Open stConn
    sSql = "select file from " & stable
    rs.Open sSql, CN, 3, 3
        Do While Not rs.EOF
            pBar.value = rs.AbsolutePosition
                If Not IsNull(rs!file) Then
                    rs!file = Replace(rs!file, stOr, stFin)
                 End If
        rs.MoveNext
        Loop
    rs.Close
    In pratica hanno cambiato disco di rete su cui risiedevano i file e si vorrebbe cambiare solo la parte della stringa che contiene la nuova cartella di rete.
    Il problema è che restituisce l'errore "informazioni sulla colonna chiave insufficienti o errate. Troppe righe interessate dall'aggiornamento".
    Le ho provate quasi tutte, evidentemente non quelle corrette…
    Grazie per ogni suggerimento potrete indicarmi

  2. #2
    L'avatar di AntonioG
    AntonioG non è in linea Moderatore Globale Ultimo blog: Commodore 64 e Codemotion
    Luogo
    Roma
    Post
    16,320
    Blogs
    5
    Aggiungi un ID (chiave primaria) alla tua tabella
    Avvisi generali e importanti, a pena CHIUSURA thread e/o BAN
    Il crossposting è vietato.
    Le richieste di "pappa pronta" sono vietate.
    Utilizzate i tag CODE per il codice.
    Leggere il Regolamento per chiarimenti PRIMA di creare nuovi thread.
    Utilizzare sempre i PM per comunicare con i moderatori.
    Non mi contattate in PM per problemi di software, usate il forum

  3. #3
    L'avatar di Hollywood
    Hollywood non è in linea Scolaretto
    Post
    294
    Avevo già provato, solo che dopo averlo letto nella tua risposta mi ero illuso che il problema risiedesse nel fatto che nella mia chiamata
    codice:
    sSql = "select file from " & stable
    non fosse incluso il campo ID... invece non va ugualmente.

    Ore15:53... ho risolto con un "workaround" copiando i singoli campi dei record in una nuova tabella, manipolando il dato che mi interessava. Di fatto il compito l'ho finito, ma roba da sei meno meno… ;-)

    Saluti e Buon Week End!
    P.S. Se poi qualcuno vuole aggiungere qualcosa… io ascolto e provo...
    Ultima modifica di Hollywood; 23-03-2019 15:50 

  4. #4
    L'avatar di Brontolo
    Brontolo non è in linea Very Important Person
    Post
    2,853
    A prescindere dall'errore riguardante la chiave primaria, è sbagliato memorizzare su tutti i record il percorso completo (di rete o no) dei file interessati. Lo dimostra il fatto che ora hai la necessità di fare questo programmino e ce l'avrai ancora la prossima volta.
    Al limite potevate mappare la nuova unità con la stessa lettera della vecchia, invece di usare l'indirizzo IP.
    Poi, se proprio uno vuole a tutti i costi scrivere lo stesso dato su tutti i record, può farlo con una query di tipo UPDATE… WHERE...
    Il regolamento del forum: la prima cosa da leggere.

+ Rispondi al Thread

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi