Advertisement
Guest User

Untitled

a guest
Mar 18th, 2019
62
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.05 KB | None | 0 0
  1. using (var connection = HeroukoPostgresql)
  2. {
  3. var watch = System.Diagnostics.Stopwatch.StartNew();
  4.  
  5. connection.Open();
  6. var trans = connection.BeginTransaction();
  7.  
  8. try
  9. {
  10. ExecuteNonQuery("TRUNCATE xxx", connection);
  11.  
  12. const string query = "COPY xxx (a,b,c,d) FROM STDIN (FORMAT BINARY)";
  13.  
  14. using (var writer = connection.BeginBinaryImport(query))
  15. {
  16. foreach (var price in prices)
  17. {
  18. writer.StartRow();
  19. writer.Write(a, NpgsqlDbType.Integer);
  20. writer.Write(b, NpgsqlDbType.Date);
  21. writer.Write(c, NpgsqlDbType.Varchar);
  22. writer.Write(d, NpgsqlDbType.Numeric);
  23. }
  24. }
  25.  
  26. trans.Commit();
  27.  
  28. watch.Stop();
  29. var elapsedMs = watch.ElapsedMilliseconds;
  30. }
  31. catch (Exception ex)
  32. {
  33. trans.Rollback();
  34. Console.WriteLine("Error importing xxx : " + ex.Message);
  35. }
  36. finally
  37. {
  38. try { connection.Close(); }
  39. catch
  40. {
  41. // ignored
  42. }
  43. }
  44. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement