SQL初始化列以自动转换为日期格式

时间:2017-11-02 13:50:01

标签: python sql-server csv

我定期下载csv文件,其中我想使用BULK INSERT将文件上传到我的sql表中。我正在使用python来自动化该过程。附加到每一行的日期格式为' YYMMDD',因此它是一个存储为int的日期。有没有办法可以初始化我的sql表,将此int自动转换为日期。

这样的东西
    create table tbl1(
         other columns.....
         record_date DATE NOT NULL convert(date,[inserted value],'YYMMDD')
    ) 

或者我应该重新解析csv文件并将int转换为正确的日期格式?

如果我不能以这种方式初始化列,那么我可以在批量插入中做些什么来自动转换?

我知道我可以编写一个脚本来编辑csv文件并重新格式化日期,但我喜欢学习新东西。

1 个答案:

答案 0 :(得分:0)

尝试添加计算列

 create table tbl1(
         [inserted value] VARCHAR(6),
         record_date as convert(date,[inserted value])
    ) 

INSERT INTO tbl1([inserted value]) VALUES ('120215')
SELECT * FROM tbl1