Domanda

Sono nuovo nel creare un database e attualmente cercando di realizzare qualcosa che è davvero necessario per me.

Lascia dire che ho un "cliente" del database con 300 righe tutte con un identificatore univoco chiamato Id_.

Id_ | Customer | Postal | Country |
200 | Mica Sa. | 99582 | USA
201 | Shum Jr. | 10258 | USA
202 | Carl Ro. | 45697 | USA
203 | Brad Mi. | 24761 | USA
.

Se elimino un numero di riga 202 utilizzando:

DELETE FROM Customer
WHERE Id_ = 202;
.

Io ottengo:

Id_ | Customer | Postal | Country |
200 | Mica Sa. | 99582 | USA
201 | Shum Jr. | 10258 | USA
203 | Brad Mi. | 24761 | USA
.

Ma quando provo a inserire una riga usando:

INSERT INTO Customer (Id_, Customer, Postal, Country)
VALUES (202, 'Peter R.', 08574, 'USA');
.

ottengo la riga inserita casualmente nel database, quindi la mia domanda è come posso inserire questa riga esattamente dopo 201(Id_) e prima di 203(Id_)?

È stato utile?

Soluzione

Per aiutarti a cancellare alcune cose:

    .
  • Il campo ID sembra essere INT e non identificativo univoco
  • Inserire le dichiarazioni non vengono effettuate in modo casuale nel DB, vanno all'ultimo record.E.G Se hai 201203 e hai inserito 202 andrà dopo 203.
  • Il modo in cui si seleziona i record (e quindi recuperati e visualizzati) è un'altra cosa.È possibile eseguire una query che ritorna il 202 prima del 203 ma questo non significa che questo sia il modo in cui sono memorizzati nel DB
  • Se ID è effettivamente di tipo Int I Reant You Realizzarli Auto incrementale

    Seleziona * Dall'ordine del cliente da ID_ DESC

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top