全部產品
Search
文件中心

Tablestore:更新映射表屬性列

更新時間:Jun 30, 2024

執行ALTER TABLE語句為已存在的映射表添加或刪除屬性列。

說明

關於ALTER TABLE語句的更多資訊,請參見更新映射表屬性列

前提條件

注意事項

  • 執行ALTER TABLE語句僅支援更新映射表的Schema,不會更新Table Store的資料存放區Schema。

  • 不支援添加或者刪除映射表主鍵列的操作。

  • 執行ALTER TABLE語句後,SQL引擎會非同步進行重新整理,最多30秒完成重新整理。在此期間執行返回所有列等操作時可能不會返回新添加的列。

  • 只有通過CREATE TABLE語句建立的映射表才支援使用ALTER TABLE語句更新屬性列。通過DESCRIBE操作自動綁定的映射表不支援使用ALTER TABLE語句更新屬性列。

  • ALTER TABLE語句每次僅支援添加或者刪除一列。如果需要進行多列操作,請執行多次ALTER TABLE語句。

參數

參數

說明

query

SQL語句,請根據所需功能進行設定。

樣本

  • 為映射表添加屬性列

    以下樣本用於為exampletable映射表添加colvalue(BIGINT類型)屬性列。

    /// <summary>
    /// 為exampletable映射表添加colvalue(BIGINT類型)屬性列。
    /// </summary>
    /// <param name="otsClient"></param>
    public static void AlterTableAddColumn(OTSClient otsClient)
    {
        SQLQueryRequest sqlQueryRequest = new SQLQueryRequest("alter table exampletable add column colvalue bigint");
        otsClient.SQLQuery(sqlQueryRequest);
    }
  • 刪除映射表的屬性列

    以下樣本用於刪除exampletable映射表中的colvalue(BIGINT類型)屬性列。

    /// <summary>
    /// 為exampletable映射表刪除colvalue(BIGINT類型)屬性列。。
    /// </summary>
    /// <param name="otsClient"></param>
    public static void AlterTableDropColumn(OTSClient otsClient)
    {
        SQLQueryRequest sqlQueryRequest = new SQLQueryRequest("alter table exampletable drop column colvalue");
        otsClient.SQLQuery(sqlQueryRequest);
    }
說明

更新映射表屬性列時,您可以先刪除舊的無用屬性列,然後再添加新的屬性列。

常見問題

SQL查詢常見錯誤排查

相關文檔

  • 如果要加速SQL資料查詢和計算,您可以通過建立二級索引或者多元索引實現。更多資訊,請參見索引選擇策略計算下推

  • 更新映射表屬性列後,您可以通過SELECT語句查詢與分析表中資料。更多資訊,請參見查詢資料

  • 如果需要查詢表的描述資訊,您可以通過DESCRIBE語句實現。更多資訊,請參見查詢表的描述資訊

  • 如果不再需要使用表或者多元索引的映射關係,您可以通過DROP MAPPING TABLE語句刪除映射關係。更多資訊,請參見刪除映射關係

  • 如果需要查看錶的索引資訊,您可以通過SHOW INDEX語句實現。更多資訊,請參見查詢索引描述資訊

  • 如果需要列出當前資料庫中的表名稱列表,您可以通過SHOW TABLES語句實現。更多資訊,請參見列出表名稱列表