更新映射表屬性列
更新時間:
Copy as MD
執行ALTER TABLE語句為已存在的映射表添加或刪除屬性列。
說明
關於ALTER TABLE語句的更多資訊,請參見更新映射表屬性列。
前提條件
已初始化Client。具體操作,請參見初始化Tablestore Client。
已建立映射關係。具體操作,請參見建立映射關係。
注意事項
-
只有通過
CREATE TABLE語句建立的映射表才支援使用ALTER TABLE語句更新屬性列。通過DESCRIBE等操作自動綁定的映射表不支援使用ALTER TABLE語句更新屬性列。 -
ALTER TABLE語句每次僅支援添加或者刪除一列。如果需要進行多列操作,請重複執行ALTER TABLE語句。 -
ALTER TABLE語句只支援更新映射表的Schema,不會更新Table Store的資料存放區Schema。 -
ALTER TABLE語句不支援添加或者刪除映射表主鍵列的操作。 -
執行
ALTER TABLE語句後,SQL引擎會非同步進行重新整理,最多需30秒完成重新整理。在此期間執行返回所有列等操作時可能不會返回新添加的列。
參數
參數 | 說明 |
query | SQL語句,請根據所需功能進行設定。 |
樣本
-
添加屬性列
以下樣本為exampletable映射表添加BIGINT類型的colvalue屬性列。
const params = { query: "alter table exampletable add column colvalue bigint", } client.sqlQuery(params, function (err, data) { if (err) { console.log('sqlQuery error:', err.toString()); } else { console.log('sqlQuery success:', data); } }); -
刪除屬性列
以下樣本刪除exampletable映射表中的colvalue(BIGINT類型)屬性列。
const params = { query: "alter table exampletable drop column colvalue", } client.sqlQuery(params, function (err, data) { if (err) { console.log('sqlQuery error:', err.toString()); } else { console.log('sqlQuery success:', data); } });
說明
更新映射表屬性列時,可以先刪除不再需要的屬性列,再根據業務需求添加新的屬性列。
常見問題
相關文檔
该文章对您有帮助吗?