Pannello di Controllo Moderatore ]

[Risolto] Ho cancellato la chiave primaria

Discussioni sulle caratteristiche di database

[Risolto] Ho cancellato la chiave primaria

Messaggioda nicola.eremita » giovedì 21 maggio 2020, 18:36

ciao, sono un principiante dei database. Ho per errore cancellato la chiave primaria di una tabella :roll: .
Così facendo la tabella è diventata immodificabile. È possibile rimediare?
Come posso far sì che la tabella torni modificabile?
Attendo vostri suggerimenti, grazie mille!
Nicola :)
Ultima modifica di charlie il lunedì 25 maggio 2020, 9:07, modificato 1 volta in totale.
Motivazione: Aggiunto [Risolto] e ✔ verde
nicola.eremita
 
Messaggi: 7
Iscritto il: mercoledì 12 febbraio 2014, 14:05

Re: ho cancellato la chiave primaria

Messaggioda unlucky83 » giovedì 21 maggio 2020, 21:29

Quando mi succede, creo una nuova tabella e trasferisco i dati. Credo sia l'unico modo.
Come creare una nuova tabella e ripopolarla con i vecchi valori?
Farlo manualmente è soluzione accettabile quando i record sono pochi e non ci sono molte relazioni da riconfigurare.
Altre volte copio la tabella in calc, aggiungo la colonna per la chiave primaria, assegno valori univoci e importo i dati da calc in una nuova tabella base. Anche in questo caso si devono riconfigurare le relazioni manualmente.
Di rado sfrutto comandi sql. E' uno strumento potente e probabilmente offre strategie migliori.
Attendi il parere degli esperti perchè con Base ho poca dimestichezza.
LibO5.1.6.2-Ubuntu 16.04.2 32-bit
-
Se risolvi:
1. Condividi la soluzione qui con noi
2. Metti [Risolto] al titolo del primo messaggio
Avatar utente
unlucky83
Volontario
Volontario
 
Messaggi: 2229
Iscritto il: lunedì 7 gennaio 2013, 2:23
Località: Latina

Re: ho cancellato la chiave primaria

Messaggioda nicola.eremita » venerdì 22 maggio 2020, 10:28

Grazie! :)
nicola.eremita
 
Messaggi: 7
Iscritto il: mercoledì 12 febbraio 2014, 14:05

Re: ho cancellato la chiave primaria

Messaggioda charlie » venerdì 22 maggio 2020, 15:58

A me non è mai successo ma ho voluto provarci, rimanendo in ambiente Base.
  • Apro in modifica la tabella e rendo chiave primaria uno qualsiasi dei campi esistenti. Naturalmente funziona solo se non ci sono "doppioni" nei record di quel campo.
  • Aggiungo un nuovo campo (ID ?) tipo Integer
  • Salvo e chiudo la tabella
  • La riapro in modalità esecuzione e scrivo tutti numeri partendo da 0 nel nuovo campo ID
  • Salvo e chiudo la tabella
  • La riapro in modalità modifica e con clic destro rendo chiave primaria il campo ID e lo imposto per l'autoincremento.
Ho fatto una prova e funziona.
charlie
macOS 10.12 Sierra: Open Office 4.1.7 - LibreOffice 6.2.8.2
http://www.charlieopenoffice.altervista.org
Avatar utente
charlie
Site Admin
Site Admin
 
Messaggi: 6937
Iscritto il: mercoledì 19 dicembre 2012, 11:50

Re: Ho cancellato la chiave primaria

Messaggioda nicola.eremita » sabato 23 maggio 2020, 15:46

ciao grazie mille! :)
nicola.eremita
 
Messaggi: 7
Iscritto il: mercoledì 12 febbraio 2014, 14:05


Torna a Base

Chi c’è in linea

Visitano il forum: Nessuno e 3 ospiti