.. | ||
CTE_OutPut.bmp | ||
ERM.pdf | ||
inventarisierungsloesung.bak | ||
LoggingClient.png | ||
README.md |
Projektaufgabe 6. Semester
[toc]
Abgabetermine
Projektaufgabe | Abgabe |
---|---|
EntityFramework | 02.08.2020 23:55 |
Hierarchiesche Structur der Location (CTE) | 15.08.2020 23:55 |
Migration MySQL zu MS SQL
Migrierung von MySQL zu Microsoft SQL Server wurde mit dem MSSA Tool erstelt. SQL Server 2017 wurde als Technologie gewählt.
Step by Step HowTo ist hier detailliert dokumentiert: SQLShark
GIT
Unterordner des PA-Testat
EntityFramework
Funktionalitäten mit Repository und EF für:
Button | Beschreibugn |
---|---|
Load data | Ladet alle Customer aus der SQL Datenbank |
Add | Fügt ein Customer in der Db hinzu |
Delete | Löscht ein Customer |
Mittels EF und LINQ Radiobutton kann man die Variante des BD-Interaktionsmethode auswählen.
How To
SQL-String kann man ignorieren da es nur für den ADO.NET-teil Relevant ist.
-
SQL-String ist in der App.config zu finden.
-
Danach die SQL.bak detei mittel SQL-Studio einlesen.
-
Applikation ausführen
Hierarchiesche Structur der Location (CTE)
CTE Script:
;WITH cte_location AS (
SELECT
location_id, parentid, 0 AS locationLevel, loc.designation AS LocationDesignation,
pod.designation AS POD_Designation,
adr.streetname,
adr.streetnumber,
tow.zip,
tow.town
FROM
[inventarisierungsloesung].Location AS loc
INNER JOIN [inventarisierungsloesung].pointofdelivery pod ON pod.location_fk = loc.location_id
INNER JOIN [inventarisierungsloesung].address adr ON loc.address_fk = adr.address_id
INNER JOIN [inventarisierungsloesung].town tow ON adr.town_fk = tow.town_id
WHERE parentid IS NULL
UNION ALL
SELECT loc.location_id ,
loc.parentid ,
cte_loc.locationLevel + 1,
loc.designation,
pod.designation,
adr.streetname,
adr.streetnumber,
tow.zip,
tow.town
FROM [inventarisierungsloesung].Location AS loc
INNER JOIN cte_location AS cte_loc
ON cte_loc.location_id = loc.parentid
INNER JOIN [inventarisierungsloesung].pointofdelivery pod ON pod.location_fk = loc.location_id
INNER JOIN [inventarisierungsloesung].address adr ON loc.address_fk = adr.address_id
INNER JOIN [inventarisierungsloesung].town tow ON adr.town_fk = tow.town_id
)
Select * FROM cte_location
Der obige Script wird von einer StoredProcedure angesptossen.
ERROR: Aktuell liegt ein Fehler vor was aus Zeitgründen nicht behoben wird.
"The data reader is incompatible with the specified 'inventarisierungsloesungModel.Location'. A member of the type, 'location_id', does not have a corresponding column in the data reader with the same name."
Ausführung auf der Datenbank ergiebt folgender Output: