我有一个非常扁平,简单的日志文件(其中一行是空行的6行),我想将其插入一个简单的5列SQL Server表中。
请原谅我的SQL无知,因为我对这个主题的知识没有受过教育。
以下是.log
文件内容: -
-----------Log File content start----------
07/30/2016 00:02:03 : BATCH CLOSE SUMMARY
MerchantID - 000022673665
TerminalID - 013
BatchItemCount - 650
NetBatchTotal - 5095.00
----------Log file content end-------------
下面是简单的SQL Server表格布局:
CREATE TABLE dbo.CCClose
(
CloseTime NVARCHAR(50) NOT NULL,
MercID NVARCHAR(50) NOT NULL,
TermID NVARCHAR(50) NOT NULL,
BatchCount NVARCHAR(30) NOT NULL,
NetBatcTotal NVARCHAR(50) NOT NULL
);
我希望以某种方式让SQL查看每一行,例如:
.log
文件类似' 批量关闭摘要'然后插入CloseTime else .log
文件类似' MerchantID '然后插入MercID else .log
文件类似' BatchItemCount '然后插入BatchCount else .log
文件类似于' NetBatchTotal '然后插入NetBatchTotal 当然,如果每列的格式正确,那将是很好的,但此时我只是想从这些日志的目录中填充.log文件数据。
我打算使用Crystal Reports构建SQL Server表。
答案 0 :(得分:2)
评论太长了。
这不是一个简单的过程。您可以使用bulk insert
执行此操作。我的想法是使用以下方法将其读入临时表:
然后处理登台表以提取所需的值(和类型)。如果您设置了格式文件,可能还有其他选项,但这会增加另一个复杂程度。
我会将表读入一个临时表,表中每行一行。然后,我会:
也许其他人会提出一种更简单的方法。