Dela via


Kommandot .alter table

Kommandot .alter table:

  • Skyddar data i "bevarade" kolumner
  • Ordnar om tabellkolumner
  • Anger ett nytt kolumnschema, docstringoch en mapp till en befintlig tabell, som skriver över det befintliga kolumnschemat, docstringoch mappen
  • Måste köras i kontexten för en specifik databas som omfång för tabellnamnet

Varning

.alter Om du använder kommandot felaktigt kan det leda till dataförlust.

Behörigheter

Du måste ha minst table Admin behörigheter för att köra det här kommandot.

Syntax

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

Läs mer om syntaxkonventioner.

Parametrar

Namn Typ Obligatorisk Beskrivning
Tablename string ✔️ Namnet på tabellen som ska ändras.
columnName, columnType string ✔️ Namnet på en befintlig eller ny kolumn som mappats till typen av data i kolumnen. Listan över dessa mappningar definierar utdatakolumnschemat.
propertyName, propertyValue string En kommaavgränsad lista över nyckel/värde-egenskapspar. Se egenskaper som stöds.

Varning

Befintliga kolumner som inte anges i kommandot tas bort. Detta kan leda till oväntad dataförlust.

Tips

Använd .show table [tableName] cslschema för att hämta det befintliga tabellschemat innan du ändrar det.

Egenskaper som stöds

Namn Typ Description
docstring string Fritext som beskriver entiteten som ska läggas till. Den här strängen visas i olika UX-inställningar bredvid entitetsnamnen.
folder string Namnet på mappen som ska läggas till i tabellen.

Hur kommandot påverkar data

  • Befintliga data i kolumner som anges i kommandot ändras inte
  • Befintliga data i kolumner som inte visas i kommandot tas bort
  • Nya kolumner läggs till i slutet av schemat
  • Data i nya kolumner antas vara null
  • Tabellen kommer att ha samma kolumner, i samma ordning, som angetts

Anteckning

Om du försöker ändra en kolumntyp misslyckas kommandot. Använd .alter column i stället.

Varning

  • Datainmatning som bortser från kolumnernas ordning och sker parallellt med risker när .alter table data matas in i fel kolumner. Om du vill förhindra detta kontrollerar du att inmatningen använder ett mappningsobjekt eller stoppar inmatningen .alter table när kommandot körs.
  • Datainmatning kan ändra en tabells kolumnschema. Var noga med att inte oavsiktligt ta bort önskade kolumner som lades till under inmatningen.

Exempel

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

Använd .alter-merge när du vill bevara tabellinställningarna och endast åsidosätta eller expandera vissa kolumner. Mer information finns i .alter-merge-tabellen.