Compare commits

..

No commits in common. "97a2564ff257a569276ee53c83219de05573a045" and "ab915ed962b7bcab8d1ad27fb041b916c875eafb" have entirely different histories.

10 changed files with 73 additions and 87 deletions

Binary file not shown.

View File

@ -1,37 +1,12 @@
{ {
"Version": 1, "Version": 1,
"WorkspaceRootPath": "C:\\Users\\bib\\Documents\\PMC_Projekt\\PMCProjekt\\", "WorkspaceRootPath": "C:\\c\u002B\u002B c#\\PMCProjekt\\PMCProjekt\\",
"Documents": [ "Documents": [],
{
"AbsoluteMoniker": "D:0:0:{7B328FFA-E441-4FED-8B99-C2B2453AA3E2}|PMCProjekt\\PMCProjekt.csproj|c:\\users\\bib\\documents\\pmc_projekt\\pmcprojekt\\pmcprojekt\\program.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}",
"RelativeMoniker": "D:0:0:{7B328FFA-E441-4FED-8B99-C2B2453AA3E2}|PMCProjekt\\PMCProjekt.csproj|solutionrelative:pmcprojekt\\program.cs||{A6C744A8-0E4A-4FC6-886A-064283054674}"
}
],
"DocumentGroupContainers": [ "DocumentGroupContainers": [
{ {
"Orientation": 0, "Orientation": 0,
"VerticalTabListWidth": 256, "VerticalTabListWidth": 256,
"DocumentGroups": [ "DocumentGroups": []
{
"DockedWidth": 200,
"SelectedChildIndex": 0,
"Children": [
{
"$type": "Document",
"DocumentIndex": 0,
"Title": "Program.cs",
"DocumentMoniker": "C:\\Users\\bib\\Documents\\PMC_Projekt\\PMCProjekt\\PMCProjekt\\Program.cs",
"RelativeDocumentMoniker": "PMCProjekt\\Program.cs",
"ToolTip": "C:\\Users\\bib\\Documents\\PMC_Projekt\\PMCProjekt\\PMCProjekt\\Program.cs",
"RelativeToolTip": "PMCProjekt\\Program.cs",
"ViewState": "AQIAAA0AAAAAAAAAAAAQwBcAAAAyAAAA",
"Icon": "ae27a6b0-e345-4288-96df-5eaf394ee369.000738|",
"WhenOpened": "2024-06-14T09:14:59.548Z",
"EditorCaption": ""
}
]
}
]
} }
] ]
} }

View File

@ -1,71 +1,82 @@
using MySql.Data.MySqlClient; //Aufgabenstellung
using System; //
using System.IO; //1.Import
//
//Als Teil des Entwicklungsteams sollen Sie einen Import für neue Nutzer der jeweiligen Kunden entwickeln.
//Die Kunden schicken zu diesem Zweck CSV-Dateien mit den Daten von neuen Nutzern.
//Diese Daten müssen in die bestehenden Datentabellen eingespielt werden.
//Dafür sind folgende Anforderungen formuliert:
//
// • Ein Sachbearbeiter ruft eine Konsolen-App auf, in welcher er die Datei und die
// Kundennummer des Kunden als Parameter übergibt: Die Beispieldatei hat den Namen "import_yutani.csv" und
// gehört zum Kunden mit der Nummer "K2-002"
//
// • Die Datei hat den Aufbau:
// - Ein Nutzer mit Anrede, Vorname, Nachname und Geburtsdatum
// - Ggf. Adresse: Straße mit Hausnummer, PLZ, Stadt
// - Ggf. E-Mail
// - Ggf. eine oder mehrere Telefonnummern: Vorwahl ohne führende 0 und Nummer
//
// • Ein Nutzer darf für einen Kunden nicht mehrmals importiert werden.
//
// • Die Daten sollen wie folgt validiert werden:
// ○ Geburtsdatum: TT.MM.JJJJ
// ○ Valide E-Mail-Adresse
// ○ PLZ: exakt 5 Nummern
// ○ Telefonnummer 3 bis 5 Nummern für die Vorwahl und 4 bis 10 Nummern für die Hauptnummer. Keine Sonderzeichen
//
// • Nicht valide Datensätze von Nutzern sollen in einem Protokoll erfasst werden, ebenso bereits vorhandene Nutzer.
// Der komplette Datensatz eines Nutzers darf dann nicht importiert werden
using MySql.Data;
using MySql.Data.MySqlClient;
using MySqlX.XDevAPI;
using System.Data.Common;
using System.Reflection.PortableExecutable;
using System.Xml;
namespace PMCProjekt namespace PMCProjekt
{ {
internal class Program internal class Program
{ {
static void Main(string[] args) static void Main(string[] args)
{ {
MySqlConnection myConnection; MySql.Data.MySqlClient.MySqlConnection myConnection;
string myConnectionString; string myConnectionString;
//set the correct values for your server, user, password and database name
// Setzen Sie die korrekten Werte für Ihren Server, Benutzer, Passwort und Datenbanknamen
myConnectionString = "server=localhost;uid=root;pwd=root;database=import_export"; myConnectionString = "server=localhost;uid=root;pwd=root;database=import_export";
try try
{ {
myConnection = new MySqlConnection(myConnectionString); myConnection = new MySql.Data.MySqlClient.MySqlConnection(myConnectionString);
// Öffnen Sie eine Verbindung //open a connection
myConnection.Open(); myConnection.Open();
// Datei einlesen // create a MySQL command and set the SQL statement with parameters
string dateiPfad = "C:/Schule/PMC/import_yutani.csv"; MySqlCommand myCommand = new MySqlCommand();
if (File.Exists(dateiPfad)) myCommand.Connection = myConnection;
myCommand.CommandText = @"SELECT * FROM user";
//myCommand.Parameters.AddWithValue("@code", "12");
// execute the command and read the results
using MySqlDataReader myReader = myCommand.ExecuteReader();
while (myReader.Read())
{ {
using (StreamReader sr = new StreamReader(dateiPfad)) int id = myReader.GetInt32("id");
{ string name = myReader.GetString("firstname");
string zeile; string nachname = myReader.GetString("lastname");
while ((zeile = sr.ReadLine()) != null) Console.WriteLine(id + " " + nachname + " " + name);
{
string[] werte = zeile.Split(',');
if (werte.Length == 2)
{
string vorname = werte[0];
string nachname = werte[1];
// Verarbeiten der Daten (z.B. Ausgabe)
Console.WriteLine("Vorname: " + vorname + ", Nachname: " + nachname);
// Daten in die Datenbank einfügen (Beispiel)
string abfrage = "INSERT INTO user (firstname, lastname) VALUES (@vorname, @nachname)";
using (MySqlCommand myCommand = new MySqlCommand(abfrage, myConnection))
{
myCommand.Parameters.AddWithValue("@vorname", vorname);
myCommand.Parameters.AddWithValue("@nachname", nachname);
myCommand.ExecuteNonQuery();
}
}
}
}
}
else
{
Console.WriteLine("Datei nicht gefunden.");
} }
// Verbindung schließen
myConnection.Close(); myConnection.Close();
} }
catch (MySqlException ex) catch (MySql.Data.MySqlClient.MySqlException ex)
{ {
Console.WriteLine("Fehler: " + ex.Message);
} }
} }
} }
}
} }

View File

@ -14,7 +14,7 @@ using System.Reflection;
[assembly: System.Reflection.AssemblyCompanyAttribute("PMCProjekt")] [assembly: System.Reflection.AssemblyCompanyAttribute("PMCProjekt")]
[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")] [assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")] [assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+e9e49af1be84151f586fad3e1633f2fa660d3d71")] [assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+6e07e4dea071a35b06e962046985cf1cd31297aa")]
[assembly: System.Reflection.AssemblyProductAttribute("PMCProjekt")] [assembly: System.Reflection.AssemblyProductAttribute("PMCProjekt")]
[assembly: System.Reflection.AssemblyTitleAttribute("PMCProjekt")] [assembly: System.Reflection.AssemblyTitleAttribute("PMCProjekt")]
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")] [assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]

View File

@ -1 +1 @@
497b76da71a0f65b1b63963994b6e814d84ab84904760acee03801e220cdfd81 5131e033b58c501fd00152c6e10aa3c9848e6c9048af06f45bb3e21b5d72b61b

View File

@ -8,6 +8,6 @@ build_property.PlatformNeutralAssembly =
build_property.EnforceExtendedAnalyzerRules = build_property.EnforceExtendedAnalyzerRules =
build_property._SupportedPlatformList = Linux,macOS,Windows build_property._SupportedPlatformList = Linux,macOS,Windows
build_property.RootNamespace = PMCProjekt build_property.RootNamespace = PMCProjekt
build_property.ProjectDir = C:\Users\bib\Documents\PMC_Projekt\PMCProjekt\PMCProjekt\ build_property.ProjectDir = C:\c++ c#\PMCProjekt\PMCProjekt\PMCProjekt\
build_property.EnableComHosting = build_property.EnableComHosting =
build_property.EnableGeneratedComInterfaceComImportInterop = build_property.EnableGeneratedComInterfaceComImportInterop =

View File

@ -1,17 +1,17 @@
{ {
"format": 1, "format": 1,
"restore": { "restore": {
"C:\\Users\\bib\\Documents\\PMC_Projekt\\PMCProjekt\\PMCProjekt\\PMCProjekt.csproj": {} "C:\\c++ c#\\PMCProjekt\\PMCProjekt\\PMCProjekt\\PMCProjekt.csproj": {}
}, },
"projects": { "projects": {
"C:\\Users\\bib\\Documents\\PMC_Projekt\\PMCProjekt\\PMCProjekt\\PMCProjekt.csproj": { "C:\\c++ c#\\PMCProjekt\\PMCProjekt\\PMCProjekt\\PMCProjekt.csproj": {
"version": "1.0.0", "version": "1.0.0",
"restore": { "restore": {
"projectUniqueName": "C:\\Users\\bib\\Documents\\PMC_Projekt\\PMCProjekt\\PMCProjekt\\PMCProjekt.csproj", "projectUniqueName": "C:\\c++ c#\\PMCProjekt\\PMCProjekt\\PMCProjekt\\PMCProjekt.csproj",
"projectName": "PMCProjekt", "projectName": "PMCProjekt",
"projectPath": "C:\\Users\\bib\\Documents\\PMC_Projekt\\PMCProjekt\\PMCProjekt\\PMCProjekt.csproj", "projectPath": "C:\\c++ c#\\PMCProjekt\\PMCProjekt\\PMCProjekt\\PMCProjekt.csproj",
"packagesPath": "C:\\Users\\bib\\.nuget\\packages\\", "packagesPath": "C:\\Users\\bib\\.nuget\\packages\\",
"outputPath": "C:\\Users\\bib\\Documents\\PMC_Projekt\\PMCProjekt\\PMCProjekt\\obj\\", "outputPath": "C:\\c++ c#\\PMCProjekt\\PMCProjekt\\PMCProjekt\\obj\\",
"projectStyle": "PackageReference", "projectStyle": "PackageReference",
"configFilePaths": [ "configFilePaths": [
"C:\\Users\\bib\\AppData\\Roaming\\NuGet\\NuGet.Config", "C:\\Users\\bib\\AppData\\Roaming\\NuGet\\NuGet.Config",

View File

@ -1791,11 +1791,11 @@
"project": { "project": {
"version": "1.0.0", "version": "1.0.0",
"restore": { "restore": {
"projectUniqueName": "C:\\Users\\bib\\Documents\\PMC_Projekt\\PMCProjekt\\PMCProjekt\\PMCProjekt.csproj", "projectUniqueName": "C:\\c++ c#\\PMCProjekt\\PMCProjekt\\PMCProjekt\\PMCProjekt.csproj",
"projectName": "PMCProjekt", "projectName": "PMCProjekt",
"projectPath": "C:\\Users\\bib\\Documents\\PMC_Projekt\\PMCProjekt\\PMCProjekt\\PMCProjekt.csproj", "projectPath": "C:\\c++ c#\\PMCProjekt\\PMCProjekt\\PMCProjekt\\PMCProjekt.csproj",
"packagesPath": "C:\\Users\\bib\\.nuget\\packages\\", "packagesPath": "C:\\Users\\bib\\.nuget\\packages\\",
"outputPath": "C:\\Users\\bib\\Documents\\PMC_Projekt\\PMCProjekt\\PMCProjekt\\obj\\", "outputPath": "C:\\c++ c#\\PMCProjekt\\PMCProjekt\\PMCProjekt\\obj\\",
"projectStyle": "PackageReference", "projectStyle": "PackageReference",
"configFilePaths": [ "configFilePaths": [
"C:\\Users\\bib\\AppData\\Roaming\\NuGet\\NuGet.Config", "C:\\Users\\bib\\AppData\\Roaming\\NuGet\\NuGet.Config",

View File

@ -1,8 +1,8 @@
{ {
"version": 2, "version": 2,
"dgSpecHash": "Jmj3WRDtSrMYQNSWXK2x6TEKWOlCmkjM6nbeQ2iYrfCgkzMw4GiPixfUmBUGiPiTU/KE5IO8pzSrja1hWLPpDA==", "dgSpecHash": "hmjpczB20rO9+XIWVQE6LffNwpIbJnVyQpbAXGcthVX7MhdlK2/SeQpWsyghUPz07HV2wtAYW2lx3ET7P7TDlg==",
"success": true, "success": true,
"projectFilePath": "C:\\Users\\bib\\Documents\\PMC_Projekt\\PMCProjekt\\PMCProjekt\\PMCProjekt.csproj", "projectFilePath": "C:\\c++ c#\\PMCProjekt\\PMCProjekt\\PMCProjekt\\PMCProjekt.csproj",
"expectedPackageFiles": [ "expectedPackageFiles": [
"C:\\Users\\bib\\.nuget\\packages\\bouncycastle.cryptography\\2.2.1\\bouncycastle.cryptography.2.2.1.nupkg.sha512", "C:\\Users\\bib\\.nuget\\packages\\bouncycastle.cryptography\\2.2.1\\bouncycastle.cryptography.2.2.1.nupkg.sha512",
"C:\\Users\\bib\\.nuget\\packages\\google.protobuf\\3.25.1\\google.protobuf.3.25.1.nupkg.sha512", "C:\\Users\\bib\\.nuget\\packages\\google.protobuf\\3.25.1\\google.protobuf.3.25.1.nupkg.sha512",