sql >> Databasteknik >  >> RDS >> Oracle

Finns det ett automatiskt sätt att generera ett återställningsskript när man infogar data med LINQ2SQL?

Det är faktiskt ganska enkelt att göra detta, eftersom du kan skicka in en SqlConnection till LINQ till SQL DataContext på konstruktion. Kör bara den här anslutningen i en transaktion och återställ transaktionen så snart du är klar.

Här är ett exempel:

string output;

using (var connection = new SqlConnection("your conn.string"))
{
    connection.Open();
    using (var transaction = connection.StartTransaction())
    {
        using (var context = new YourDataContext(connection))
        {
            // This next line is needed in .NET 3.5.
            context.Transaction = transaction;

            var writer = new StringWriter();
            context.Log = writer;

            // *** Do your stuff here ***

            context.SubmitChanges();

            output = writer.ToString();
        }

        transaction.Rollback();
    }
}


  1. SQLSTATE[42S01]:Bastabell eller vy finns redan:1050 Tabell "betalningar" finns redan (SQL:skapa tabell "betalningar"

  2. Hur Cosd() fungerar i PostgreSQL

  3. KONTROLLERA BEGRÄNSNING på flera kolumner

  4. Ansluter till MySQL-databaser