Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using (var connection = HeroukoPostgresql)
- {
- var watch = System.Diagnostics.Stopwatch.StartNew();
- connection.Open();
- var trans = connection.BeginTransaction();
- try
- {
- ExecuteNonQuery("TRUNCATE xxx", connection);
- const string query = "COPY xxx (a,b,c,d) FROM STDIN (FORMAT BINARY)";
- using (var writer = connection.BeginBinaryImport(query))
- {
- foreach (var price in prices)
- {
- writer.StartRow();
- writer.Write(a, NpgsqlDbType.Integer);
- writer.Write(b, NpgsqlDbType.Date);
- writer.Write(c, NpgsqlDbType.Varchar);
- writer.Write(d, NpgsqlDbType.Numeric);
- }
- }
- trans.Commit();
- watch.Stop();
- var elapsedMs = watch.ElapsedMilliseconds;
- }
- catch (Exception ex)
- {
- trans.Rollback();
- Console.WriteLine("Error importing xxx : " + ex.Message);
- }
- finally
- {
- try { connection.Close(); }
- catch
- {
- // ignored
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement