单个表查询可以这样写:
string csvDirectory = "C:/";
string csvFile = "[test.csv]";
OdbcConnection dbConn = new OdbcConnection("Driver={Microsoft Text Driver (*.txt; *.csv)};DBQ=" + csvDirectory + @";Extended Properties='Text;FMT=Delimited(,);HDR=NO;IMEX=1'");
dbConn.Open();
string sql = @"SELECT * FROM " + csvFile;
但是如果有多csv的话,查询语句该怎么写?
------解决思路----------------------
不会,但是我觉得你可以这样。你把两个文件分别查询到两个DataSet或者DataTable里面,然后在用这两个DataSet或者DataTable里面的数据做处理,来得到你想要的数据。
------解决思路----------------------
应该是不支持这样查,它毕竟不是数据库
就好比你分别去查询两个sql server数据库里的2张表
你可以按1楼的办法,先都读出来,然后用LINQ在内存里处理
------解决思路----------------------
或者你使用一个轻量级的数据库,比如access,sqlite,mysql之类的,而不是用2个单独的文件当做数据表用
------解决思路----------------------
全部加载到内存然后用linq to obj来读,毕竟是文件不是数据库。