Werte aus der Datenbank +1 per Button Click (Visual Basic)

  • VB.NET

Es gibt 7 Antworten in diesem Thema. Der letzte Beitrag () ist von Acr0most.

    Werte aus der Datenbank +1 per Button Click (Visual Basic)

    Hallo,
    Bin neu hier und habe ein Problem.
    Ich möchte so machen wenn ein Scanncode (xxxxxxx) kommt soll z.B. bei der Spalte 4 Reihe 2 der Wert mit +1 Addiert/mit einem Textbox.
    Ich habe da was gefunden aber es hilft mir nicht weiter. Könnt ihr mir sagen wie ich mein Problem finde/lösen kann?

    VB.NET-Quellcode

    1. UPDATE mytable
    2. SET Anzahl = Anzahl + 1 '/Menge.Text
    3. WHERE Reihe = 12
    4. 'Bekomme nur Fehler ... da steht z.B. für update,mytable usw. wurde nicht deklariert.

    Ich habe wirkich versucht es auf Google zu finden aber klappt nicht, weil ich weiß nicht wie ich das formulieren soll :S .

    Weitere Information
    Zugriff auf meiner Datenbank habe ich.


    Dieser Beitrag wurde bereits 4 mal editiert, zuletzt von „Dekras12“ ()

    Das was du da hast ist ein Update-Statement für den SQL-Server.

    Das musst du noch gegen deinen SQL-Server fahren, damit du das gewünschte Resultat erzielst.

    ungetestet:

    VB.NET-Quellcode

    1. Dim sqlConn As New SqlConnection("Dein ConnectionString")
    2. Dim cmd As New SqlCommand
    3. cmd.CommandText = "Update mytable Set Anzahl = Anzahl +1 Where Reihe =12" 'Hier ist dein Update-Statement
    4. cmd.CommandType = CommandType.Text
    5. cmd.Connection = sqlConn
    6. sqlConn.Open()
    7. cmd.ExecuteNonQuery()
    8. ' Data is accessible through the DataReader object here.
    9. sqlConnection1.Close()



    inwiefern du dein Statement noch anpassen musst, musst du natürlich noch schauen.
    Wenn das Leben wirklich nur aus Nullen und Einsen besteht, dann laufen sicherlich genügen Nullen frei herum. :D
    Signature-Move 8o
    kein Problem mit privaten Konversationen zu Thema XY :thumbup:
    oh. sry. Vergessen abzuändern. das muss

    VB.NET-Quellcode

    1. sqlConn.Close
    heißen


    im Grunde wird die SQLConnection, die du mit .Open aufbaust, hier nach deinen Update-Statement wieder geschlossen.
    Wenn das Leben wirklich nur aus Nullen und Einsen besteht, dann laufen sicherlich genügen Nullen frei herum. :D
    Signature-Move 8o
    kein Problem mit privaten Konversationen zu Thema XY :thumbup:
    Wo hast du es so benannt? VB-DGV/SQL-DB
    Wie zeigst du deine Daten an? DGV?

    Im Datagridview gibt es einen ColumnName und einen Anzeigename.


    Wenn man davon ausgeht das die spalte im SQL so untypisch benannt ist, und die Daten in einem DGV anzeigen willst, würde ich:

    1. Spalte in Datenbank umbenennen
    2. alle gewünschten Spalten im DGV laden
    3. Wenn spaltenname = <name der Spalte in DB>, den Anzeigename auf <Anzahl(Marke)> abändern.

    So in etwa. Wenn es schon hilft, ok, ansonsten wirst dich schon nochmal melden xD


    Edit: eine solche Aufbereitung könnte in etwa wie folgt aussehen:


    VB.NET-Quellcode

    1. For Each column As DataGridViewColumn In DataGridView1.Columns
    2. Select Case column.HeaderText
    3. Case "AnzahlMarke"
    4. column.HeaderText = "Anzahl(Marke)"
    5. Case "AnzahlMarke2"
    6. column.HeaderText = "Anzahl(Marke2)"
    7. Case "AnzahlMarke3"
    8. column.HeaderText = "Anzahl(Marke3)"
    9. End Select
    10. Next
    Wenn das Leben wirklich nur aus Nullen und Einsen besteht, dann laufen sicherlich genügen Nullen frei herum. :D
    Signature-Move 8o
    kein Problem mit privaten Konversationen zu Thema XY :thumbup:

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „Acr0most“ ()

    Ich benutze kein DataGrid aber trotzdem danke.
    Habe das Problem das ich bei der +1 keine Textbox schreiben kann also z.B. AnzahlText.Text
    (Sorry wenn ich deine Zeit Vergolde o_O)
    Dann kommt der Fehler
    Unknown column 'AnzahlText.Text' in 'field list'

    VB.NET-Quellcode

    1. "Update mytable Set Anzahl = Anzahl + AnzahlText.Text Where Reihe =12"

    bist der erste der meine Zeit vergoldet :thumbsup:

    Dekras12 schrieb:

    "Update mytable Set Anzahl = Anzahl + AnzahlText.Text Where Reihe =12"




    du möchtest den Wert aus der textbox in deinen String integrieren. Sprich:

    VB.NET-Quellcode

    1. Dim sSql as String = "Update mytable Set Anzahl = Anzahl + " & AnzahlText.Text.ToString & " where Reihe =12"


    du setzt quasi den Wert deiner Textbox als String in den String ein. Was du hattest, war keine Variable, sondern nur "Text" der so genommen wird wie er da steht.
    Wenn das Leben wirklich nur aus Nullen und Einsen besteht, dann laufen sicherlich genügen Nullen frei herum. :D
    Signature-Move 8o
    kein Problem mit privaten Konversationen zu Thema XY :thumbup: