MySQL AGGIORNAMENTO Interrogazione con esempio

โšก Riepilogo intelligente

MySQL La query UPDATE modifica le righe esistenti in una tabella, cambiando uno o piรน campi in un'unica istruzione. Questa risorsa illustra la sintassi di UPDATE, il filtro WHERE, fornisce esempi pratici sulla tabella members e illustra le misure di sicurezza che impediscono aggiornamenti di massa indesiderati.

  • ๏ธ Dichiarazione principale: UPDATE `table_name` SET `column_name` = 'new_value' [WHERE condition] riscrive i valori in ogni riga che corrisponde al filtro.
  • โš ๏ธ Omesso DOVE: Senza una clausola WHERE, l'istruzione UPDATE riscrive la colonna in ogni riga della tabella.
  • ๐Ÿ”ข Formattazione dei valori: I valori di tipo stringa e data richiedono le virgolette singole, mentre i valori numerici non le richiedono. Le date seguono il formato 'AAAA-MM-GG'.
  • ๐Ÿงฉ Colonne multiple: Separare ogni assegnazione con una virgola per aggiornare piรน campi in un'unica istruzione.
  • ๐Ÿ” Fase di verifica: Eseguire prima la clausola WHERE come istruzione SELECT, quindi ripeterla dopo l'UPDATE per confermare i nuovi valori.
  • ๐Ÿ›ก๏ธ Modalitร  di aggiornamento sicuro: MySQL Workbench rifiuta qualsiasi istruzione UPDATE la cui clausola WHERE non filtri su una colonna chiave.

Cos'รจ la query di AGGIORNAMENTO?

Migliori AGGIORNAMENTO MySQL Il comando viene utilizzato per modificare le righe in una tabella. La query UPDATE puรฒ modificare un singolo campo o piรน campi contemporaneamente. Puรฒ anche essere utilizzato per aggiornare un MySQL tabella con valori prelevati da un'altra tabella.

Perchรฉ utilizzare la query UPDATE in MySQL?

I dati raramente rimangono corretti per sempre. I membri cambiano numero di telefono, i prezzi cambiano e gli ordini passano dallo stato "in sospeso" a "spedito". Eliminare la vecchia riga e inserirne una nuova comprometterebbe la chiave primaria e tutti i riferimenti alle chiavi esterne. L'istruzione UPDATE modifica la riga direttamente sul posto, in modo che l'identitร  e le relazioni rimangano inalterate.

La query UPDATE รจ lo strumento giusto ogni volta che:

  • Un valore รจ errato o obsoleto: Correggi un nome scritto in modo errato o aggiorna un numero di telefono senza modificare il resto del record.
  • La situazione deve evolversi: รˆ possibile far passare un ordine da "in sospeso" a "spedito" riscrivendo una singola colonna.
  • Diversi campi cambiano contemporaneamente: Con una singola istruzione รจ possibile impostare un nuovo nome e un nuovo indirizzo nello stesso passaggio.
  • รˆ necessaria una correzione di massa: Una clausola WHERE che corrisponde a piรน righe applica la stessa modifica a tutte contemporaneamente.

Poichรฉ un'istruzione UPDATE senza clausola WHERE riscrive ogni riga, il filtro separa una correzione di routine da una sovrascrittura accidentale.

MySQL Aggiorna la sintassi dei comandi

Stabilito lo scopo, il passo successivo รจ la sintassi. La forma base della query UPDATE in MySQL รจ mostrato sotto.

UPDATE `table_name` SET `column_name` = 'new_value' [WHERE condition];

QUI:

  • AGGIORNA `table_name` รจ il comando che dice MySQL modificare i dati in una tabella.
  • IMPOSTA `column_name` = 'new_value' Specifica i nomi e i valori dei campi da modificare con la query UPDATE. Quando si impostano i valori, i tipi di dati stringa devono essere racchiusi tra virgolette singole. I valori numerici non necessitano di virgolette. I valori di data devono essere racchiusi tra virgolette singole e nel formato 'AAAA-MM-GG'.
  • [Condizione DOVE] รจ facoltativo e puรฒ essere utilizzato per applicare un filtro che limita il numero di righe interessate dalla query UPDATE. L'elenco completo delle opzioni appare in MySQL Manuale della dichiarazione AGGIORNA.

Vediamo ora un esempio pratico che aggiorna i dati nella tabella dei membri.

Aggiornamento in MySQL Esempio

Supponiamo che i membri con numero di iscrizione 1 e 2 debbano apportare i seguenti aggiornamenti ai propri dati.

Numero di iscrizione Aggiornamenti richiesti
1 Modificare il numero di telefono da 999 a 0759 253 532
2 Modifica il nome in Janet Smith Jones e aggiorna l'indirizzo fisico in Melrose 123

Aggiorna una singola colonna

Iniziamo con l'iscritto numero 1. Prima di apportare qualsiasi modifica, recuperiamo quel record.

SELECT * FROM `members` WHERE `membership_number` = 1;

L'esecuzione dello script sopra riportato produce i seguenti risultati.

numero_iscrizione nomi_completi genere data_di_nascita indirizzo fisico indirizzo_postale numero di telefono email
1 Janet Jones Femmina 21-07-1980 Primo lotto di strada n. 4 Borsa privata 999 janetjones@yagoo.cm

Aggiorniamo ora il numero di contatto utilizzando lo script mostrato di seguito.

UPDATE `members` SET `contact_number` = '0759 253 532' WHERE `membership_number` = 1;

L'esecuzione dello script sopra riportato modifica il numero di contatto da 999 a 0759 253 532 per l'utente numero 1. Eseguendo nuovamente la query SELECT si conferma il nuovo valore.

numero_iscrizione nomi_completi genere data_di_nascita indirizzo fisico indirizzo_postale numero di telefono email
1 Janet Jones Femmina 21-07-1980 Primo lotto di strada n. 4 Borsa privata 0759 253 532 janetjones@yagoo.cm

Aggiorna piรน colonne

L'iscrizione numero 2 richiede la modifica simultanea di due campi. Questo รจ il record prima dell'aggiornamento.

numero_iscrizione nomi_completi genere data_di_nascita indirizzo fisico indirizzo_postale numero di telefono email
2 Smith Jones Femmina 23-06-1980 Park Street NULL NULL jj@fstreet.com

Lo script seguente aggiorna entrambe le colonne con un'unica istruzione. Si noti la virgola che separa le due assegnazioni.

UPDATE `members` SET `full_names` = 'Janet Smith Jones', `physical_address` = 'Melrose 123' WHERE `membership_number` = 2;

L'esecuzione dello script sopra riportato aggiorna il nome completo dell'iscritto numero 2 in Janet Smith Jones e l'indirizzo fisico in Melrose 123.

numero_iscrizione nomi_completi genere data_di_nascita indirizzo fisico indirizzo_postale numero di telefono email
2 Janet Smith Jones Femmina 23-06-1980 Melrose 123 NULL NULL jj@fstreet.com

Suggerimento: Il "Dove la clausola" รจ ciรฒ che limita il numero di righe interessate dalla query UPDATE. Omettendolo, ogni riga della tabella viene riscritta.

DOMANDE FREQUENTI

MySQL Restituisce un conteggio di "Righe corrispondenti" e un conteggio di "Righe modificate". Il conteggio delle righe corrispondenti mostra quante righe sono state selezionate dalla clausola WHERE, mentre il conteggio delle righe modificate esclude le righe il cui nuovo valore รจ identico a quello precedente.

Sรฌ. Combina AGGIORNAMENTO con un ISCRIVITI e fare riferimento alla seconda tabella nella clausola SET. La condizione di join determina quale riga di origine fornisce il nuovo valore per ciascuna riga di destinazione.

Inseritelo in una transazione. START TRANSACTION seguito da ROLLBACK ripristina i valori precedenti. Una volta che la modifica รจ stata confermata, solo un backup puรฒ recuperare i dati precedenti, quindi testate prima la clausola WHERE con SELECT.

Sรฌ. Gli assistenti basati sull'IA convertono la modifica descritta in sintassi UPDATE e suggeriscono la clausola WHERE. Fornisci al modello la struttura della tua tabella, quindi verifica il filtro con un'istruzione SELECT prima di eseguire la query generata.

Un modello di intelligenza artificiale non puรฒ visualizzare le righe di dati in tempo reale, quindi una clausola WHERE leggermente errata puรฒ sovrascrivere silenziosamente migliaia di record. RevEsamina ogni istruzione generata, eseguila su una copia di staging e conserva un backup aggiornato.

Riassumi questo post con: