2009-03-18 13 views

risposta

6

A partire da MySQL 5.0.2 è possibile scrivere una stored procedure collegata a TRIGGER che può esaminare la nuova colonna ogni volta che viene inserita una riga e copiare automaticamente il valore dell'altra colonna nella nuova colonna se non è stato fornito alcun valore per la nuova colonna.

+0

Grazie per il commento. Inizialmente pensavo ai trigger, ma voglio stare lontano da loro. Dato che questo non è molto importante per i miei bisogni immediati, presumo semplicemente che non sia possibile in MySQL per impostazione predefinita. Grazie ancora! –

1

creare una vista, ed è possibile selezionare la stessa colonna due volte e dargli un nome diverso, quindi l'applicazione può utilizzare la vista invece utilizzare direttamente la tabella.

2

A partire dal 20101212 mysql non supporta le colonne di timestamp di default 2, il che significa che non è possibile eseguire un 'creato' e 'aggiornato' sulla stessa tabella.

Se questo è quello che stavi cercando di fare, allora il trigger con il proc memorizzato è la strada da percorrere.

3

È possibile utilizzare i seguenti due comandi per eseguire il proprio lavoro.

  1. Questo comando verrà utilizzato per aggiungere una nuova colonna nella tabella. Ricorda il tipo di dati da cui desideri copiare per utilizzare questi tipi di dati nella nuova colonna.

    ALTER TABLE table_name ADD new_column_name VARCHAR(60); 
    

2: questo comando per copiare i dati dal vecchio nome di colonna al nuovo nome della colonna.

UPDATE table_name SET new_column_name = old_column_name; 

Poi, se si desidera eliminare colonna precedente, quindi è possibile utilizzare il comando seguente

ALTER TABLE table_name DROP COLUMN old_column_name; 
Problemi correlati