Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
Visual Basic 6 - vb6 ordinamento tabella per id su sql server
Forum - Visual Basic 6 - vb6 ordinamento tabella per id su sql server

Avatar
piter123 (Normal User)
Pro


Messaggi: 145
Iscritto: 21/05/2008

Segnala al moderatore
Postato alle 9:44
Sabato, 19/01/2013
Salve, ho un piccolo progetto in vb6 che si collega ad una tabella di sql server.
Questa tabella contiene 4 colonne di cui una denominata ID in ordine ascendente.
La tabella contiene circa 2000 record.
Ora ad esempio devo inserire un nuovo record nella posizione 1000, per cui rinomino
tutti gli ID da 1000 in su aggengento una unità, per cui il 1000 diventa 1001, il 1001
diventa il 1002 ecc.
Dopo di che tramite INSERT inserisco il nuovo recor.
Fin quì tutto ok.
Il mio problema stà nell'aprire la tabella da Management Studio di Sql e di vedere che il
record che ho aggiunto non si trova tra il 999 e il 1001 ma bensì viene accodato, (nessun
problema per le query di lettura che vengono richiamate tramite ORDER BY ID), ma mi
piacerebbe vederlo non in coda.
Esiste un modo che dopo aver inserito il record mi riordina la tabella per ID ?
Grazie

PM Quote
Avatar
nessuno (Normal User)
Guru^2


Messaggi: 6388
Iscritto: 03/01/2010

Segnala al moderatore
Postato alle 10:16
Sabato, 19/01/2013
No, stai usando il DBMS come se fosse un file random e non è questo il modo giusto.

I record vanno semplicemente accodati, è poi responsabilità del tuo programma ordinarli, raggrupparli e visualizzarli secondo le necessità, non del DBMS.

Nel tool di visualizzazione (Management Studio) puoi ordinare i dati come vuoi quando li visualizzi.

E' anche sbagliata e inutile l'operazione che fai con gli ID. Gli ID sono riferimenti "univoci" e non vanno cambiati durante l'uso, altrimenti non hanno senso di esistere.


Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
---
Il grande studioso italiano Bruno de Finetti ( uno dei padri fondatori del moderno Calcolo delle probabilità ) chiamava il gioco del Lotto Tassa sulla stupidità.
PM Quote
Avatar
ampeg (Normal User)
Pro


Messaggi: 124
Iscritto: 21/04/2011

Segnala al moderatore
Postato alle 13:51
Lunedì, 21/01/2013
segui il consiglio precedente

inoltre se è solo per questione di "ordinamento" puoi mettere un campo numerico apposito, ad esempio lo chiami [ORD] e tramite codice ad ogni inserimento lo riscrivi come meglio ti soddisfa

io faccio così per ciò che riguarda una tabella clienti perché voglio che vengano visualizzati sempre in un certo ordine in una griglia indipendentemente da tutto il resto

ovviamente poi query la ordini in funzione di questo campo

Ultima modifica effettuata da ampeg il 21/01/2013 alle 13:53
PM Quote
Avatar
piter123 (Normal User)
Pro


Messaggi: 145
Iscritto: 21/05/2008

Segnala al moderatore
Postato alle 10:07
Lunedì, 11/02/2013
ciao e grazie, si è giusto tutto ciò che avete detto ed ho fatto come mi avete consigliato.

PM Quote