取消
顯示的結果
而不是尋找
你的意思是:

使用current_timestampδ表中作為默認值

deng77
新的貢獻者三世

我想添加一個列到現有三角洲表插入數據時的時間戳。我知道我可以通過包括current_timestamp SQL語句插入到表中。

是否可以添加一個列到現有表的默認值δcurrent_timestamp所以我不寫作時必須包括時間戳數據表?我已經嚐試做它但它似乎沒有填充列當我插入到表中。

這就是到目前為止我已經嚐試:

改變表的表添加列默認current_timestamp InsertUTC時間戳

8回答說8

Danpeco
新的貢獻者二世

時間列會current_timestamp的默認值()如果做後我去了表屬性相同的行動在同一DBR 12.2 LTS運行時。

然而,它將會失敗如果我試圖添加數據到目標表,還有一個列(默認時間列)比我添加的值:不能寫“spark_catalog.gold。xxxxxxx’,沒有足夠的數據列;目標表19列(s),但插入的數據18列(s)。

你知道為什麼這可能是發生嗎?

deng77
新的貢獻者三世

你將值添加到表如何?我之前遇到這個問題時,我沒有在INSERT語句中指定列的表我寫有一個標識列是自動生成的。

pvignesh92
尊敬的貢獻者
——修改表使用生成的總功能created_at列Alter table example_table添加列created_at生成時間戳總是CURRENT_TIMESTAMP ();

@Michael伯奇你好,你嚐試使用生成的總特征。我相信可以滿足你的需求。,你不需要為這個列插入一個單獨的值每次數據加載到表中。

deng77
新的貢獻者三世

那對我不起作用,我得到以下錯誤:

[PARSE_SYNTAX_ERROR]語法錯誤達到或接近“生成”(第2行,pos 32)。

這聽起來像三角洲湖生成的列必須基於其他表列:

三角洲湖支持生成的列是一種特殊類型的列的值是自動生成基於用戶指定的函數其他列三角洲的表。

https://docs.m.eheci.com/delta/generated-columns.html

歡迎來到磚社區:讓學習、網絡和一起慶祝

加入我們的快速增長的數據專業人員和專家的80 k +社區成員,準備發現,幫助和合作而做出有意義的聯係。

點擊在這裏注冊今天,加入!

參與令人興奮的技術討論,加入一個組與你的同事和滿足我們的成員。

Baidu
map