SQL Servr:从表格Excel表中插入表

时间:2018-01-13 23:03:45

标签: sql sql-server

我有一个包含以下数据的Excel文件:

enter image description here

我需要将这些数据插入到SQL Server表中,但是以列表形式。

示例:

enter image description here

所以我必须从Excel转换表格格式,只有3列:

degreeant, positionant, amount

有任何线索吗?

3 个答案:

答案 0 :(得分:0)

使用您喜欢的工具(SSIS?)将数据导入SQL Server到具有与excel文件相同结构的临时表中。 然后,使用查询将数据附加到目标表:

template <typename T>
void fooHelper (T t, std::true_type const &)
 { /* true case */ }

template <typename T>
void fooHelper (T t, std::false_type const &)
 { /* false case */ }

template <typename T>
void foo (T t)
 { fooHelper(t, std::is_fundamental<T>{}); }

答案 1 :(得分:0)

将Excel数据转换为制表符分隔文件。然后将每一行放在一个数组中。之后使用数组元素编号进行必要的操作。并编写您的数据库查询以插入。

file = open(“tsf”, “r”)  //tab seperated file is read
//open db connection here
for line in file:  
    array = line.split("\t")
    //insert necessary elements of b with query here
    // eg. insert into table values(array[0], array[2], array[4]) 
    pass
//close db connection 

答案 2 :(得分:0)

我发现了一种更好的方法,使用带有Unpivot表的Excel

enter image description here

选择要取消透视的所有列

enter image description here

单击“Unpivot”按钮

enter image description here

瞧!!!“

enter image description here