Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 13
  1. #1

    Inserire record in mezzo a un database

    Ehm, scusate avrei bisogno di una informazione..
    Esiste un comando per inserire un record all'interno di un database (mdb, Access), DOPO un determinato record già presente?

    Grazie
    Where there is a will, there is a way

  2. #2
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Che significa? Non ti basta ordinare la tabella in un certo modo??

    Roby

  3. #3
    ho bisogno di inserire un record ad un certo punto della tabella, dopo un determinato record. Insomma non devo aggiungere un record alla fine ma IN MEZZO alla tabella, si può fare?
    Where there is a will, there is a way

  4. #4
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Un db non e' un insieme ordinato di dati... l'ordine effettivo e' del tutto arbitrario e gestito dal motore del db che ottimizza lo spazio e autonomamente decide dove memorizzare le informazioni.

    Ergo.... non puoi decidere dove mettere il tuo record per il semplice fatto che il dove non esiste... tu lo affidi semplicemente al motore del db.

    ciao
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  5. #5
    Forse non mi sono spiegato bene... Vorrei giusto sapere se, per aggiungere un record IN MEZZO al database, posso usare un codice simile a questo (che attualmente uso per aggiungere un record ALLA FINE del database):


    Set Conn = Server.CreateObject("ADODB.Connection")
    Conn.connectionstring = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("database.mdb")& ";"
    Conn.Open

    sql = "INSERT INTO giochi (datainserimento, titolo, formato, anno) VALUES ('"&dataesatta&"', '"&titologame&"', '"&piattaformagame&"', '"&annogx&"')"

    Conn.Execute (sql)
    Conn.Close
    Set Conn = Nothing


    Where there is a will, there is a way

  6. #6
    noi non avremmo capito ma tu non sai leggere

    Ergo.... non puoi decidere dove mettere il tuo record per il semplice fatto che il dove non esiste... tu lo affidi semplicemente al motore del db.

    il record lo si aggiunge alla fine per pura convenzione del motore del daztabase...non è detto che un altro database faccia lo stesso

    usa un ordinamento se puoi vuoi visualizzarlo in mezzo...che poi non capisco a cosa ti serva

  7. #7
    Originariamente inviato da santino83
    noi non avremmo capito ma tu non sai leggere




    il record lo si aggiunge alla fine per pura convenzione del motore del daztabase...non è detto che un altro database faccia lo stesso

    usa un ordinamento se puoi vuoi visualizzarlo in mezzo...che poi non capisco a cosa ti serva


    [Lasciando perdere il fatto che non ho detto da nessuna parte "non avete capito" e mi sono sentito dire "tu non sai leggere", che non è molto carino... Il grassetto inganna, era solo per evidenziare mica per urlare]

    Il punto è: io inizialmente carico alcuni record e li visualizzo, più o meno in questo modo:

    RECORD 1
    RECORD 2
    RECORD 3

    a un certo punto però devo aggiornare la lista ed inserire un nuovo record, il quale deve necessariamente andare (ad esempio) dopo il record 1:

    RECORD 1
    (NUOVO RECORD)
    RECORD 2
    RECORD 3

    dunque mi chiedevo se c'era un modo, o meglio un comando, per inserire un record dopo un altro oppure se questo comando non esiste..
    Where there is a will, there is a way

  8. #8
    Non penso che ci sia un database che faccia qualcosa del genere (penso che quest'eventualità non sia neanche contemplata in SQL), però potresti ovviare aggiungendo un nuovo campo "POSIZIONE":
    codice:
    ID               POSIZIONE
    
    RECORD 1             1
    RECORD 2             3
    RECORD 3             4
    (NUOVO RECORD)       2
    E poi ordinare per "POSIZIONE"
    Home: http://www.ivansweb.com
    Le mie applicazioni gratuite in ASP
    · IWGallery
    · IWNewsletter
    · IWMessenger
    · IWGuestbook

  9. #9
    Originariamente inviato da ivanhalen
    Non penso che ci sia un database che faccia qualcosa del genere (penso che quest'eventualità non sia neanche contemplata in SQL), però potresti ovviare aggiungendo un nuovo campo "POSIZIONE":
    codice:
    ID               POSIZIONE
    
    RECORD 1             1
    RECORD 2             3
    RECORD 3             4
    (NUOVO RECORD)       2
    E poi ordinare per "POSIZIONE"
    Mmm.. si ma in questo modo ogni volta che voglio aggiungere un record in mezzo al database mi tocca rinominare tutti gli altri record..un pò scocciante ma credo che farò così se non c'è altro modo

    Un'ultima domanda.. supponiamo di creare un database ordinato per posizione (come nell'esempio sopra), e che voglia aggiungere un record in mezzo al database.
    Allora rinomino i campi posizione, dopodichè aggiungo il record.
    A questo punto mi chiedo: il nuovo record viene posizionato correttamente nel database? oppure il database deve essere in qualche modo "refresh-ato"?

    Cioè se all'inizio ho:

    RECORD 1 POSIZIONE 1
    RECORD 2 POSIZIONE 2
    RECORD 3 POSIZIONE 3

    E poi ho:

    RECORD 1 POSIZIONE 1
    RECORD 2 POSIZIONE 3
    RECORD 3 POSIZIONE 4

    E poi:

    RECORD 1 POSIZIONE 1
    RECORD 2 POSIZIONE 3
    RECORD 3 POSIZIONE 4
    *NEW RECORD* POSIZIONE 2

    *NEW RECORD* resta in basso o si mette in seconda posizione?
    Where there is a will, there is a way

  10. #10
    Scusate l'azzardo ma se lui fa un rs.move x e poi rs.addnew glielo aggiunge alla fine o subito dopo il record x???
    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.