共用方式為


.alter table 命令

.alter table 命令:

  • 保護「保留」數據行中的數據
  • 重新排序數據表數據行
  • 將新的數據行架構、 docstring和資料夾設定為現有的數據表,並覆寫現有的數據行架構、 docstring和資料夾
  • 必須在限定數據表名稱的特定資料庫內容中執行

警告

.alter使用命令不正確可能會導致資料遺失。

權限

您必須至少有 資料表管理員 許可權才能執行此命令。

語法

.altertableName columnName: (columnType [, ...]) [with( propertyName = propertyValue [, ...]])table

深入瞭解 語法慣例

參數

姓名 類型​​ 必要 描述
tableName string ✔️ 要改變的數據表名稱。
columnNamecolumnType string ✔️ 對應至該數據行中數據類型的現有或新數據行名稱。 這些對應的清單會定義輸出數據行架構。
propertyNamepropertyValue string 索引鍵/值屬性組的逗號分隔清單。 請參閱 支持的屬性

警告

命令中未指定的現有數據行將會卸除。 這可能會導致非預期的數據遺失。

提示

使用 .show table [tableName] cslschema 來取得現有的數據表架構,再加以變更。

支援的屬性

名稱 類型​​ 描述
docstring string 描述要加入之實體的免費文字。 此字串會顯示在實體名稱旁的各種UX設定中。
folder string 要加入至數據表的資料夾名稱。

命令如何影響數據

  • 命令中所列數據列中的現有資料將不會修改
  • 命令中未列出的數據行中現有的數據將會被刪除
  • 新的數據行將會新增至架構結尾
  • 新數據行中的數據假設為 Null
  • 數據表會依指定的順序,具有相同的數據行

注意

如果您嘗試改變數據行類型,命令將會失敗。 請改用 .alter column

警告

  • 會忽略數據行順序的數據擷取,並且會與將數據擷取到錯誤數據行的風險平行 .alter table 發生。 若要避免這種情況,請確定擷取會在執行 .alter table 命令時使用對應物件或停止擷取。
  • 數據擷取可能會修改數據表的數據行架構。 請小心不要不小心移除擷取期間新增的所需數據行。

範例

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

當您要保留資料表設定,並且只覆寫或展開特定資料行時,請使用 .alter-merge 。 如需詳細資訊,請參閱 .alter-merge 數據表