public void CancelRawBinaryImport() { using (var conn = new NpgsqlConnection(ConnectionString)) { conn.Open(); ExecuteNonQuery("CREATE TEMP TABLE data (field_text TEXT, field_int2 SMALLINT, field_int4 INTEGER)", conn); var garbage = new byte[] {1, 2, 3, 4}; using (var s = conn.BeginRawBinaryCopy("COPY data (field_text, field_int4) FROM STDIN BINARY")) { s.Write(garbage, 0, garbage.Length); s.Cancel(); } Assert.That(ExecuteScalar("SELECT COUNT(*) FROM data", conn), Is.EqualTo(0)); } }
public void CloseDuringCopy() { // TODO: Check no broken connections were returned to the pool using (var conn = new NpgsqlConnection(ConnectionString)) { conn.Open(); ExecuteNonQuery("CREATE TEMP TABLE data (field_text TEXT, field_int2 SMALLINT, field_int4 INTEGER)", conn); conn.BeginBinaryImport("COPY data (field_text, field_int4) FROM STDIN BINARY"); } using (var conn = new NpgsqlConnection(ConnectionString)) { conn.Open(); ExecuteNonQuery("CREATE TEMP TABLE data (field_text TEXT, field_int2 SMALLINT, field_int4 INTEGER)", conn); conn.BeginBinaryExport("COPY data (field_text, field_int2) TO STDIN BINARY"); } using (var conn = new NpgsqlConnection(ConnectionString)) { conn.Open(); ExecuteNonQuery("CREATE TEMP TABLE data (field_text TEXT, field_int2 SMALLINT, field_int4 INTEGER)", conn); conn.BeginRawBinaryCopy("COPY data (field_text, field_int4) FROM STDIN BINARY"); } using (var conn = new NpgsqlConnection(ConnectionString)) { conn.Open(); ExecuteNonQuery("CREATE TEMP TABLE data (field_text TEXT, field_int2 SMALLINT, field_int4 INTEGER)", conn); conn.BeginRawBinaryCopy("COPY data (field_text, field_int4) TO STDIN BINARY"); } using (var conn = new NpgsqlConnection(ConnectionString)) { conn.Open(); ExecuteNonQuery("CREATE TEMP TABLE data (field_text TEXT, field_int2 SMALLINT, field_int4 INTEGER)", conn); conn.BeginTextImport("COPY data (field_text, field_int4) FROM STDIN"); } using (var conn = new NpgsqlConnection(ConnectionString)) { conn.Open(); ExecuteNonQuery("CREATE TEMP TABLE data (field_text TEXT, field_int2 SMALLINT, field_int4 INTEGER)", conn); conn.BeginTextExport("COPY data (field_text, field_int4) TO STDIN"); } }