2016-11-15 37 views
-1
update employee set JoiningDate=Cast(DateofJoining as date); 

我複製joiningDate列數據爲Dateofjoining列...我想從joiningdate列中的所有行的數據複製到Dateofjoining列 joiningdate是varcharchar和加入的日期是日期如何列數據複製到新的列在同一表

錯誤是:從字符串變換日期和/或時間時

轉換失敗。

+1

好像列中有無效的日期值。 – jarlh

+2

您正在使用哪些DBMS? –

回答

1

您可能有包含不能用作DATE格式的字符串格式的行。先刪除這些條目,然後再試

+0

alter table employee alter column DateofJoining date; – babi

+0

alter table employee alter column DateofJoining date; iam嘗試在alter table但沒有用,錯誤是::轉換日期和/或時間從字符串轉換失敗。 該聲明已被終止。 – babi

+0

是的,你再次問這個問題。你試過我說的嗎? –

0

我等着你的DBMS,但是:

你可以這樣做流量:

  • 添加一個新列DateofJoining2與日期時間
  • 寫一個更新腳本(所以你可以管理你的舊數據到新列)
  • 刪除舊列(如果你的第2步是好的)
  • 重命名該列的舊名DateofJoining

如果您編寫您的DBMS,我可以編寫確切的DDL和DML腳本。

0
ALTER TABLE [dbo].[Your_table] ADD New_Column Date UPDATE your_table SET New_Column = CAST(Old_Column as Date) ALTER TABLE Your_table DROP COLUMN Old_Column 
+0

如何將column1值複製到一個表中的新column2中 – babi

+0

將舊列值更新爲新列。我在上面提到的查詢中提到 – Mansoor

+0

更新員工集合JoiningDate = cast(DateofJoining作爲日期) – babi

相關問題