Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2012
    Messaggi
    15

    problema con cancellazione dati in database

    Salve a tutti,
    ho creato un dataset e l'ho popolato tramite un database .mdb
    successivamente ho creato una listview (View: Details). Il tutto funziona alla perfezione. Ho anche creato un button per inserire nuovi elementi nel database tramite query.
    Però c'è un problema... ho creato anche un tasto "Elimina" che porta in delete.vb in cui all'interno c'è una checkedlistbox con la lista di tutti gli elementi. come posso fare in modo che gli elementi selezionati vengano cancellati da database? o c'è un modo più semplice/fattibile?

    Grazie

  2. #2

    Moderazione

    Di che linguaggio stiamo parlando esattamente?
    Amaro C++, il gusto pieno dell'undefined behavior.

  3. #3
    Utente di HTML.it
    Registrato dal
    Jun 2012
    Messaggi
    15
    Vb.net

  4. #4

    Moderazione

    Originariamente inviato da Skevil
    Vb.net
    Ok, aggiungo al titolo il tag relativo; in futuro inseriscilo tu fin da subito.
    Amaro C++, il gusto pieno dell'undefined behavior.

  5. #5
    Utente di HTML.it
    Registrato dal
    Jun 2012
    Messaggi
    15
    ok grazie. nessun consiglio per il problema?

  6. #6
    Utente di HTML.it L'avatar di Veronica80
    Registrato dal
    May 2006
    Messaggi
    2,110
    Se usi la listbox devi usare delle classi per associare l'id corrispondente del record a ogni riga della listbox!

    Personalmente preferisco sempre la listview o il datagridview (che usano colonne)!

  7. #7
    Utente di HTML.it
    Registrato dal
    Jun 2012
    Messaggi
    15
    Originariamente inviato da Veronica80
    Se usi la listbox devi usare delle classi per associare l'id corrispondente del record a ogni riga della listbox!

    Personalmente preferisco sempre la listview o il datagridview (che usano colonne)!
    Ciao innanzitutto grazie della risposta. Allora ti spiego in dettaglio: il database contiene circa 20 colonne (nome, cognome, ecc.) e ci sono circa 30 righe all'interno (30 elementi). Quindi io volevo che selezionato un nome (ex. Mario Rossi) su una listbox, e premuto un button, mi cancellasse l'intera riga in cui era presente Mario come "nome" e Rossi come "cognome" dal database. Non so se mi sono spiegato bene...

  8. #8
    Utente di HTML.it L'avatar di Veronica80
    Registrato dal
    May 2006
    Messaggi
    2,110
    Si...avevo capito cosa vuoi fare...

    Immagino che ognuno dei tuoi 30 record abbia un ID che funge da identificatore univoco no? Tu devi passare quel dato alla listbox in modo che anche da VB possa identificare il record in modo univoco!

    Il problema è che la listbox di Vb.NET non ha il caro vecchio ITEM_DATA che c'era in VB6 quindi devi farti una classe per associare l'id all'item della listbox! Per quello (se non è troppo incasinato e sei ancora all'inizio dello sviluppo del programma) ti consiglio di non usare la listbox ma una dataGridView (o al massimo una listview) in modo che possa inserire colonne INVISIBILI in cui inserire i dati che non si devono vedere ma che comunque ti servono (come in questo caso l'ID del record)!

    Non so se mi son spiegata bene!

  9. #9
    Utente di HTML.it
    Registrato dal
    Jun 2012
    Messaggi
    15
    ho capito il concetto, ma non ho capito come applicarlo (sono all'inizio con vb.net). Momentaneamente ho risolto in questo modo: dalla checkedlistbox l'utente clicca su una persona e quando clicca sul button, viene cancellata la riga all'interno del database dove nella colonna "cognome" c'è il nome di quello selezionato.
    codice:
    "DELETE FROM utenti WHERE cognome='" & Entry.ToString() & "' LIMIT 1"
    Però c'è il problema che se due persone hanno il cognome uguale, può essere cancellato quello sbagliato.

  10. #10
    Utente di HTML.it L'avatar di XWolverineX
    Registrato dal
    Aug 2005
    residenza
    Prague
    Messaggi
    2,565
    Non concatenare le stringhe per creare query sql!
    Utilizza le query con parametri!
    "Se proprio devono piratare, almeno piratino il nostro." (Bill Gates)

    "Non è possibile che 2 istituzioni statali mi mettano esami nello stesso giorno." (XWolverineX)

    http://xvincentx.netsons.org/programBlog

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 © 2024 vBulletin Solutions, Inc. All rights reserved.