MS SQL Tabelle richtig lesen!

  • VB.NET

Es gibt 8 Antworten in diesem Thema. Der letzte Beitrag () ist von Cheffboss.

    MS SQL Tabelle richtig lesen!

    Moin! :)
    Ich habe zwei Tabellen mit dem Namen tblCode und tblBenutzer.
    Wenn der Benutzer einen Guthabencode einlöst, möchte ich dass in der Spalte Wert der Vorname oder die ID erscheint.
    Zum Beispiel Wer = 1 für Maxmustermann.
    Leider komme ich gerade nicht weiter, wäre schön wenn mir jemand helfen kann.
    Code und Bildschirmfoto sind hinzugefügt worden!
    Wie im Bild Nummer 2 zu sehen, spuckt mir SQL, anstand einen Wert zurück, zwei.
    Das Ergebnis sollte sein: „Max Mustermann“, ohne die "Gabi Müller".
    Freue mich auf eure Hilfe!
    BIG THX





    edit2:
    Hier der SQl-Code:

    SQL-Abfrage

    1. SELECT * FROM dbo.tblCode
    2. SELECT * FROM [dbo].[tblBenutzer]
    3. INSERT INTO dbo.tblCode(Wer)
    4. ( SELECT Vorname + ' ' + Nachname
    5. FROM tblCode
    6. INNER JOIN tblBenutzer ON tblCode.ID = tblBenutzer.ID
    7. WHERE tblcode.id = tblbenutzer.id
    8. )


    edit3:
    Visual Basic.NET 8o
    MS-SQL
    8o

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Cheffboss“ ()

    Wo in deinem SQL-Statement wählst du denn einen Datensatz aus deiner Benutzer-Tabelle?

    Zudem schreibt man nicht mehr das Prefix "tbl" und es wäre besser du schaffst eine Beziehung zwischen den Tabellen und in deine Spalte wer kommt die Id des Benutzers.

    Nachtrag: warum der JOIN?
    Die deutsche Sprache ist Freeware, du kannst sie benutzen, ohne dafür zu bezahlen. Sie ist aber nicht Open Source, also darfst du sie nicht verändern, wie es dir gerade passt.
    @ErfinderDesRades
    Ich habe das Datenbankdiagramm erstellt.

    @MrTrebron
    Die Benutzer-Tabelle hat bereits Daten gespeichert.
    Ich habe gelernt dass man das Prefix "tbl" verwenden soll.
    Was ist nun die neuere Empfehlung?
    Ich habe einen JOIN drin, damit ich auf die Tabellen zugreifen kann, oder geht dies auch ohne?

    @an alle
    Ich habe ein neues Bild hochgeladen.
    Links, teste ich die Unterabfrage, die mir den Username „Test“ anzeigt.
    In der Mitte habe ich das UPDATE SET versucht.
    Leider, ändert er mir alle Einträge um.
    Im rechten Bild, sieht man das Ergebnis.
    Leider, ist dies so nicht erwünscht.
    Ich möchte, das bei einem Wert nur der aktuelle Datensatz geändert wird und nicht alle.
    Zum Verstehen: Wenn der Benutzer „Test“, einen Gutscheincode einlöst, soll auch bei der Spalte "Wer" sein Namen erscheinen!“.
    :)

    Visual Basic.NET 8o
    MS-SQL
    8o
    Dem Präfix würde ich weglassen.

    Dein Join bringt immer nicht keinen Mehrwert.
    Im Inneren SELECT wählst du jetzt aus welcher Benutzer gesucht werden soll, aber im UPDATE fehlt eine WHERE Bedingung um einen Gutschein auszuwählen.

    Ich würde auch immer noch nur die ID des Benutzer in der Gutschein Tabelle speichern und beim Laden per JOIN die Daten holen.
    Die deutsche Sprache ist Freeware, du kannst sie benutzen, ohne dafür zu bezahlen. Sie ist aber nicht Open Source, also darfst du sie nicht verändern, wie es dir gerade passt.
    @MrTrebron
    Ich werde den JOIN Befehl rausnehmen.
    Und werde nur die ID des Benutzers speichern.
    Leider, weiß ich nicht wie ich die WHERE Bedingung um einen Gutschein auszuwählen programmieren kann!?
    Da ich nur die ID, Code, Wert, Abgebucht, Wer als Verfügung habe.
    ?(
    Visual Basic.NET 8o
    MS-SQL
    8o