我有一个txt文件,其中包含许多以下格式的项目
DBSERVER: HKSER
DBREPLICAID: 51376694590
DBPATH: redirect.nsf
DBTITLE: Redirect AP
DATETIME: 09.03.2015 09:44:21 AM
READS: 1
Adds: 0
Updates: 0
Deletes: 0
DBSERVER: HKSER
DBREPLICAID: 21425584590
DBPATH: redirect.nsf
DBTITLE: Redirect AP
DATETIME: 08.03.2015 09:50:20 PM
READS: 2
Adds: 0
Updates: 0
Deletes: 0
.
.
.
.
please see the source capture here
我想将txt文件导入以下SQL格式
1st column 2nd column 3rd column 4th column 5th column .....
DBSERVER DBREPLICAID DBPATH DBTITLE DATETIME ......
HKSER 51376694590 redirect.nsf Redirect AP 09.03.2015 09:44:21 AM
HKSER 21425584590 redirect.nsf Redirect AP 08.03.2015 01:08:07 AM
please see the output capture here
非常感谢!
答案 0 :(得分:0)
您可以将该文件转储到只有一个文本列的临时表中。导入后,您可以使用游标在该表中循环,将内容存储到变量中,并且每10条记录会在实际目标表中插入一个新行。
这不是最优雅的解决方案,但是它很简单并且可以完成工作。
答案 1 :(得分:0)
使用批量插入,您可以将标头和数据插入两个不同的列中,然后使用动态sql查询,可以创建表并根据需要插入数据。
答案 2 :(得分:0)
对于这样的事情,我可能会使用SSIS。
想法是创建一个脚本组件(作为转换)
您需要手动定义输出列(例如DBSERVER字符串(100))
Src是您的文件(正常读取)
想法是先逐行构建行,然后将整行添加到输出缓冲区。 例如 Output0Buffer.AddRow();
然后将行写入目标。
如果所有文件的格式都相同,则可以将每个循环的整个文件包装成一个