Comando .alter table

Il comando .alter table:

  • Protegge i dati nelle colonne "conservate"
  • Riordinare le colonne della tabella
  • Imposta un nuovo schema di colonna, docstring, e una cartella su una tabella esistente, sovrascrivendo lo schema di colonna esistente, docstring, e la cartella
  • Deve essere eseguito nel contesto di un database specifico con ambito il nome della tabella

Avviso

L'uso del .alter comando in modo errato può causare la perdita di dati.

Autorizzazioni

Per eseguire questo comando, è necessario disporre almeno delle autorizzazioni table Amministrazione.

Sintassi

.altertableTablename(Columnname:columnType [, ...]) [with(propertyName=propertyValue [, ...])]

Altre informazioni sulle convenzioni di sintassi.

Parametri

Nome Tipo Obbligatoria Descrizione
tableName string ✔️ Nome della tabella da modificare.
columnName, columnType string ✔️ Nome di una colonna esistente o nuova mappata al tipo di dati in tale colonna. L'elenco di questi mapping definisce lo schema della colonna di output.
propertyName, propertyValue string Elenco delimitato da virgole di coppie di proprietà chiave-valore. Vedere le proprietà supportate.

Avviso

Le colonne esistenti non specificate nel comando verranno eliminate. Ciò potrebbe causare una perdita di dati imprevista.

Suggerimento

Usare .show table [tableName] cslschema per ottenere lo schema di tabella esistente prima di modificarlo.

Proprietà supportate

Nome Tipo Descrizione
docstring string Testo libero che descrive l'entità da aggiungere. Questa stringa viene presentata in varie impostazioni dell'esperienza utente accanto ai nomi delle entità.
folder string Nome della cartella da aggiungere alla tabella.

Come il comando influisce sui dati

  • I dati esistenti nelle colonne elencati nel comando non verranno modificati
  • I dati esistenti nelle colonne non elencati nel comando verranno eliminati
  • Alla fine dello schema verranno aggiunte nuove colonne
  • Si presuppone che i dati nelle nuove colonne siano Null
  • La tabella avrà le stesse colonne, nello stesso ordine, come specificato

Nota

Se si tenta di modificare un tipo di colonna, il comando avrà esito negativo. Usare invece .alter column.

Avviso

  • Inserimento di dati che ignora l'ordine delle colonne e si verifica in parallelo con .alter table i rischi di inserimento dei dati nelle colonne sbagliate. Per evitare questo problema, assicurarsi che l'inserimento usi un oggetto mapping o interrompa l'inserimento durante l'esecuzione del .alter table comando.
  • L'inserimento di dati può modificare lo schema di colonna di una tabella. Prestare attenzione a non rimuovere accidentalmente le colonne desiderate aggiunte durante l'inserimento.

Esempio

.alter table MyTable (ColumnX:string, ColumnY:int) 
.alter table MyTable (ColumnX:string, ColumnY:int) with (docstring = "Some documentation", folder = "Folder1")

Usare .alter-merge quando si desidera mantenere le impostazioni della tabella e solo eseguire l'override o espandere determinate colonne. Per altre informazioni, vedere tabella .alter-merge.