我真的离开了我的联盟,但我听说可以做到。
我有一个PBX电话服务器,其原始电话数据包含数千个不同的CSV文件,这些文件经常被捕获(8分钟到2小时),存储在过时的文件夹中。
我可以连接到服务器的唯一方法是通过WinSCP,它只是给我文件结构(看起来像Filezilla FTP)。
所以有两件事:
我只需要一些方向。我甚至不知道从哪里开始。
感谢您的帮助。
答案 0 :(得分:1)
答案 1 :(得分:1)
1-有很多方法可以将csv文件加载到sql server中,即BCP,BulkLoad,OpenRowSet(批量提供程序),SSIS,自定义.Net应用程序
最受欢迎的是批量插入。请参阅此博客了解教程
2-定时活动?再次许多选择,但最直接的 - >设置Nighly SQL作业
答案 2 :(得分:1)
using System;
using System.Data;
using Microsoft.VisualBasic.FileIO;
namespace ReadDataFromCSVFile
{
static class Program
{
static void Main()
{
string csv_file_path=@"C:\Users\Administrator\Desktop\test.csv";
DataTable csvData = GetDataTabletFromCSVFile(csv_file_path);
Console.WriteLine("Rows count:" + csvData.Rows.Count);
Console.ReadLine();
}
private static DataTable GetDataTabletFromCSVFile(string csv_file_path)
{
DataTable csvData = new DataTable();
try
{
using(TextFieldParser csvReader = new TextFieldParser(csv_file_path))
{
csvReader.SetDelimiters(new string[] { "," });
csvReader.HasFieldsEnclosedInQuotes = true;
string[] colFields = csvReader.ReadFields();
foreach (string column in colFields)
{
DataColumn datecolumn = new DataColumn(column);
datecolumn.AllowDBNull = true;
csvData.Columns.Add(datecolumn);
}
while (!csvReader.EndOfData)
{
string[] fieldData = csvReader.ReadFields();
//Making empty value as null
for (int i = 0; i < fieldData.Length; i++)
{
if (fieldData[i] == "")
{
fieldData[i] = null;
}
}
csvData.Rows.Add(fieldData);
}
}
}
catch (Exception ex)
{
}
return csvData;
}
}
}