Dieser Artikel ist ein Spiegelartikel der maschinellen Übersetzung, bitte klicken Sie hier, um zum Originalartikel zu springen.

Ansehen: 22937|Antwort: 1

[Quelle] Die CREATE DATABASE-Anweisung ist in einer Multi-Statement-Transaktion nicht erlaubt

[Link kopieren]
Veröffentlicht am 09.04.2017 16:07:07 | | |

C# Verursacht Fehler beim dynamischen Erstellen von SQL-Datenbanken: DROP DATABASE-Anweisungen sind in Mehrausweisungs-Transaktionen nicht erlaubt
Wenn Sie diesen Fehler im SQL Query Analyzer erhalten, können Sie folgende Lösungen ausprobieren:
Öffne den "Query Analyzer" und öffne dann keine Datenbanken, damit er nicht in den Verarbeitungsumfang der Datenbank eintritt und der oben genannte Fehler nicht angezeigt wird. Das Eingeben einer Datenbank entspricht der Anwendung der Anweisung "use ***".
Wenn der Fehler beim dynamischen Erstellen in .NET auftritt, prüfen Sie zunächst, ob die Transaktion bei der Ausführung der create-Datenbankanweisung verwendet wurde; die folgende SQL-Anweisung darf in der Transaktion nicht erscheinen:
ALTER DATABASE verändert die Datenbank
BACKUP-LOG Backup-Protokolle
CREATE DATABASE um eine Datenbank zu erstellen
DISK INIT erstellt eine Datenbank oder ein Transaktionsprotokollgerät
DROP DATABASE löscht die Datenbank
DUMP TRANSAKTION Dump das Transaktionsprotokoll
DATENBANK LADEN Binden Sie eine Sicherungskopie der Datenbank ein
LADEN TRANSAKTION Laden Transaktionsprotokoll Backup-Kopie
RECONFIGURE aktualisiert den aktuellen Konfigurationswert (Spalte config_value im sp_configure Ergebnisset) der Konfigurationsoptionen, die die Änderung der sp_configure systemgespeicherten Prozeduränderung verwenden.
RESTORE DATABASE Stelle eine Datenbanksicherung wieder her, die mit dem Befehl BACKUP erstellt wurde
RESTORE LOG Wiederherstelle Log-Backups, die mit dem Befehl BACKUP erstellt wurden,
AKTUALISIERE STATISTIKEN Aktualisiert Informationen für eine oder mehrere statistische Gruppen (Sammlungen) mit Schlüsselwertverteilungen in einer bestimmten Tabelle oder Indexansicht




Vorhergehend:mvc Controller Autofac-Attribut in den Controller injiziert
Nächster:Verwendung von TransactionScope in C#
Verzichtserklärung:
Alle von Code Farmer Network veröffentlichten Software, Programmiermaterialien oder Artikel dienen ausschließlich Lern- und Forschungszwecken; Die oben genannten Inhalte dürfen nicht für kommerzielle oder illegale Zwecke verwendet werden, andernfalls tragen die Nutzer alle Konsequenzen. Die Informationen auf dieser Seite stammen aus dem Internet, und Urheberrechtsstreitigkeiten haben nichts mit dieser Seite zu tun. Sie müssen die oben genannten Inhalte innerhalb von 24 Stunden nach dem Download vollständig von Ihrem Computer löschen. Wenn Ihnen das Programm gefällt, unterstützen Sie bitte echte Software, kaufen Sie die Registrierung und erhalten Sie bessere echte Dienstleistungen. Falls es eine Verletzung gibt, kontaktieren Sie uns bitte per E-Mail.

Mail To:help@itsvse.com