2010年3月16日火曜日

CSVとSQL

CSVファイルに対してSQLを発行できるらしい。知らんかった。
サンプルはJScript。

  1. var args = WScript.Arguments;  
  2. var fullName = args(0);  
  3.   
  4. var fso = new ActiveXObject("Scripting.FileSystemObject");  
  5. var path = fso.GetParentFolderName(fullName);  
  6. var basename = fso.GetBaseName(fullName);  
  7. var filetype = fso.GetExtensionName(fullName);  
  8.   
  9. var con = new ActiveXObject("ADODB.Connection");  
  10. con.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;"  
  11. "Data Source=" + path + ";"  
  12. "Extended Properties=\"text;HDR=YES;FMT=Delimited;\";";  
  13. con.Open();  
  14.   
  15. // CSVファイルから、SQLでクエリ  
  16. var rs = con.Execute("select * from [" + basename + "#" + filetype + "] where sex = '男' order by Age;");  
  17. while (!rs.EOF) {  
  18. var id = rs.Fields("ID");  
  19. var name = rs.Fields("Name");  
  20. var age = rs.Fields("Age");  
  21. var address = rs.Fields("Address");  
  22. WScript.Echo(id + "," + name + "," + age + "," + address);  
  23. rs.MoveNext();  
  24. }  
  25.   
  26. rs.Close();  
  27. con.Close();  

読み込んだファイルは以下の通り
ID,Name,Age,Address,Sex
1,佐藤,30,東京,女
2,鈴木,12,北海道,男
3,高橋,35,兵庫,男
4,田中,28,愛媛,女
5,渡辺,14,愛知,女
6,伊藤,22,佐賀,男

0 件のコメント: