Ergebnis 1 bis 1 von 1

Thema: Fehler beim Übertragen von Zahlen mit Komma aus C# in SQL DB

  1. #1
    Neuer Benutzer
    Registriert seit
    10.10.2018
    Ort
    Hamburg
    Beiträge
    1

    Standard Fehler beim Übertragen von Zahlen mit Komma aus C# in SQL DB

    Hallo zusammen,
    ich arbeite gerade an meiner Abschlussarbeit und habe ein Problem.

    Ich versuche eine Kommazahl in meine Datenbank zu übertragen, leider tritt an der Stelle
    "SqlDataAdapter.Fill(DataTable)"
    ein Fehler auf.
    In der Fehlermeldung steht nur, dass in der Nähe einer Zahl (Immer die Zahl die die erste Kommastelle ist) ein Fehler aufgetreten ist.

    Wenn ich in meine DB-Tabelle Kommazahlen eintrage, ändert er diese automatisch von z.B. "2.3" in "2,3",
    aber funktioniert dann einwandfrei.

    In meinem C#-Code liegt die Zahl so vor: "2.3", wenn ich aber die Variable in den dem SqlCommand übergebe, wird daraus "2,3",
    demnach dachte ich, dass alles funktionieren sollte, leider falsch gedacht.
    Ich habe nun schon diverse Kombinationen ausprobiert, SQL-Datentyp: dezimal, float, numeric, real und dazu auf der C#Seite: float, dezimal.
    Aber Irgendwas mache ich falsch. Hat jemand eine Idee? Das wäre mir eine große Hilfe und Freude und ich wäre sehr dankbar und glücklich darüber.

    Die ganze Methode:
    Code:
            public void AddBewertung(Video selectedVideo)
            {
                SqlConnection con = OpenConnection();
                DataTable dt = new DataTable("tbVideos");
                decimal _sterne = Convert.ToDecimal(Math.Round(selectedVideo.Sterne,1));
                SqlCommand cmd = new SqlCommand($@"UPDATE tbVideos SET ViAnzahlBewertungen = {selectedVideo.AnzahlBewertungen}, ViSterne = {_sterne}, AllRatingPoints = {selectedVideo.AllRatingPoints} WHERE VideoID = '{selectedVideo.VideoID}'", con);           
                var da = new SqlDataAdapter(cmd);           
                da.Fill(dt);          
    
                var builder = new SqlCommandBuilder(da);
                da.Update(dt);
                con.Close();
            }
    LG
    Marie
    Geändert von Marie (10.10.2018 um 15:14 Uhr)

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •