DBMS – QLNhaKhoa und Parallelität
- Gruppenprojekt aus dem HCMUS-Kurs „Datenbankmanagementsystem“ 2023.
Inhaltsverzeichnis
- Inhalt
- QLNhaKhoa, QLNK_Release und Assets
- SQL
- Erste Schritte
- Voraussetzungen
- Installation
- Verwendung
- Zum Einrichten der Datenbank
- Zum Ausführen der QLNhaKhoa-Anwendung
- Um Parallelitätskonflikte zu beobachten oder zu beheben
- Im DBMS
- In der QLNhaKhoa-App
- Gebaut mit
- Lernen Sie das Team kennen
Inhalt
-
Project.pdf enthält alle Aufgaben und Anforderungen des Projekts (auf Vietnamesisch). -
Report.pdf enthält unsere Dokumentation für alle Entwürfe und erforderlichen Aufgaben (auf Vietnamesisch).
QLNhaKhoa , QLNK_Release und assets
Quellcode, Release-Build und Ressourcen im Zusammenhang mit der C#-WinForms-App.
ACHTUNG: In beiden Fällen läuft die Anwendung auch nach dem Schließen der Schnittstelle im Hintergrund weiter.
- Durch Ausführen von
QLNhaKhoa.exe in QLNK_Release , - Durch
Start Without Debugging (Ctrl + F5) in Visual Studio.
Es sollte manuell mit dem Task-Manager beendet werden, indem nach QLNhaKhoa gesucht wird.
SQL
Alle Ordner und Dateien sind ziemlich selbsterklärend, aber hier sind einige bemerkenswerte Dinge:
-
setupDB.bat erstellt die Datenbank und füllt alle Daten auf. -
concurrency enthält Implementierungen und Lösungen für Parallelitätskonfliktszenarien.
Erste Schritte
Voraussetzungen
- Windows 10 oder 11.
- Für die WinForms-Entwicklung:
- Visual Studio 2022 und seine
.NET desktop development -Workload.
- SQL Server 2022 Developer und SQL Server Management Studio (SSMS) 19.2.
- (Optional) Jeder anständige Code-Editor, vorzugsweise VSCode.
- Es erleichtert lediglich die Bearbeitung des Quellcodes der Datenbank.
Installation
(zurück nach oben)
Verwendung
Zum Einrichten der Datenbank
- Starten Sie den
SQL Server und stellen Sie eine Verbindung zu ihm her.- Stellen Sie sicher, dass Sie über ausreichende Berechtigungen verfügen.
- Navigieren Sie in
SQL Ordner. - Führen Sie
setupDB.bat aus.- Alle Daten werden mithilfe gespeicherter Prozeduren eingefügt. Aufgrund der strengen Einschränkungen beim Einfügen einiger Tabellen ist zu erwarten, dass viele Daten die Prüfungen nicht bestehen.
Zum Ausführen der QLNhaKhoa-Anwendung
- Beenden Sie die Einrichtung der Datenbank.
- Navigieren Sie zu
QLNK_Release . - Führen Sie
QLNhaKhoa.exe aus.
ACHTUNG: Die Anwendung läuft auch nach dem Schließen der Schnittstelle im Hintergrund weiter. Es sollte manuell mit dem Task-Manager beendet werden, indem nach QLNhaKhoa gesucht wird.
Um Parallelitätskonflikte zu beobachten oder zu beheben
Im DMBS
- Starten Sie den
SQL Server und stellen Sie eine Verbindung zu ihm her.- Stellen Sie sicher, dass Sie über ausreichende Berechtigungen verfügen.
- Navigieren Sie zum Ordner
SQLconcurrencyco , wobei co der Konflikt Ihrer Wahl ist. - Führen Sie
co.sql aus, um alle Basisprozeduren durch die fehlerhaften oder reparierten zu ersetzen. - Führen Sie
tran1.sql und dann direkt danach tran2.sql aus.- Für ein optimales Erlebnis sollte jede Datei in einer SSMS-Instanz geöffnet werden, die beide nebeneinander platziert werden sollten.
- Weitere Informationen finden Sie in den MSSQL-Isolationsstufen-Demos von CodeCowboyOrg.
In der QLNhaKhoa-App
- Starten Sie den
SQL Server und stellen Sie eine Verbindung zu ihm her.- Stellen Sie sicher, dass Sie über ausreichende Berechtigungen verfügen.
- Navigieren Sie zum Ordner
SQLconcurrencyco , wobei co der Konflikt Ihrer Wahl ist. - Führen Sie
co.sql aus, um alle Basisprozeduren durch die fehlerhaften oder reparierten zu ersetzen. - Führen Sie zwei Instanzen von QLNhaKhoa nebeneinander aus und befolgen Sie dabei die oben genannten Schritte.
- Führen Sie Aktionen aus, die für die Konfliktszenarien relevant sind.
- Nun ist dieser Schritt sehr schwer zu erklären, da die Möglichkeiten endlos sind. Im Prinzip einfach experimentieren.
- Für Hinweise können Sie sich alle
tran1.sql s und tran2.sql s ansehen und dann versuchen, diese Abfragen in die App zu übersetzen.
Gebaut mit
| | | | | |
|---|
| 2022 v17.8.3 | 8,0 | Entwickler 2022 | 19.2.56.2 | 1,85,0 | 11 |
Lernen Sie das Team kennen
(zurück nach oben)