Ich bekomme unter Fehler beim Einfügen von Datensätzen in der Datenbank.Sql Transaktionsfehler
Eigentlich füge ich Daten in der Datenbank nach Transaktionsumfangsmethode ein, deren Code unten beschrieben wird.
TransactionOptions tOptions = new TransactionOptions();
tOptions.IsolationLevel = IsolationLevel.ReadCommitted;
tOptions.Timeout = TransactionManager.MaximumTimeout;
using (var transactionScope = new TransactionScope(TransactionScopeOption.RequiresNew, tOptions))
{
}
Gibt es etwas falsch in der obigen Aussage?
Eine Sache, die hier zu erwähnen ist, dass ich Bulk-Einfügen von Daten in mindestens 10 Tabellen mit vielen Datensätzen und Tabellen auch doppelte Datensätze in Bulk-einfügen eingefügt werden können, Syntax verwendet, um dies zu erreichen ist unten erwähnt.
CREATE UNIQUE INDEX Index_a ON table1([c1], [c2]) WITH IGNORE_DUP_KEY
Ich wäre dankbar, wenn mir jemand mit diesem Problem helfen könnte.
Welche Verbindung Timeout verwenden Sie? –
Versuchen Sie, Ihren Code in einen try-catch-Block zu setzen und untersuchen Sie die Exception im Debugger. Ich habe das getan und manchmal mehr Details über das Problem bekommen, wie eine NULL, die in ein nicht Nullable-Feld eingefügt wird, so etwas. – Melanie
Ist Ihre Operation erfolgreich, wenn Sie sie ohne die Transaktion ausführen? Wenn ja, wie lange dauert es, bis die Transaktion abgeschlossen ist? – Nathan