Entwickler-Ecke

Datenbanken (inkl. ADO.NET) - SQL ID herausfinden


philip93 - Fr 20.01.12 15:33
Titel: SQL ID herausfinden
Also bei meinem Programm hab ich 2 Tabellen, die Tabelle Geräte und die Tabelle Gerätegruppe.
In der Tabelle Geräte wird die Gerätebezeichnung und die ID der dazugehörenden Gerätegruppe gespeichert.
Bei der Suche greif ich auf die Gerätebezeichnung und den Namen der Gerätegruppe zu. Ich möchte aber die ID der Gerätegruppe rausfinden und sie in der Tabelle Geräte speichern.


Bite um Hilfe


Moderiert von user profile iconTh69: Topic aus C# - Die Sprache verschoben am Fr 20.01.2012 um 15:01


Th69 - Fr 20.01.12 16:04

Hallo philip93 :welcome:

welche Technologie benutzt du denn, um auf die Tabellen zuzugreifen (z.B. direkt mittels SQL)? Und bei SQL brauchst du ja nur die ID noch zu der Abfrage hinzuzufügen.
Am besten, du postest mal etwas Code.


Andreas L. - Fr 20.01.12 16:06

Du willst also Gerät und die zugehörige Gerätegruppe mit einem Statement ermitteln? Das geht in etwa so:


SQL-Anweisung
1:
2:
3:
4:
5:
6:
7:
8:
9:
  SELECT
    geraete . *,
    geraetegruppen . *
  FROM
    geraete
  LEFT JOIN
    geraetegruppen
  ON
    (geraetegruppen.gruppen_id = geraete.gruppen_id)


philip93 - Fr 20.01.12 16:51

Also ich benutze SQL

und Andreas L. wie speichere ich nun die ID der ausgewählen Gerätegruppe?


C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
grpEditieren.Enabled = true;
btnLöschen.Enabled = true;
ID = Convert.ToInt32(lvItem2.SubItems[0].Text.ToString());
               
frmStart.Start.DBOpen("Select * from tblGeraete, tblGeraetegruppe WHERE ID_Geraet=" + ID + ";");

while (frmStart.Start.dr.Read())
{
    txtGeraetename.Text = frmStart.Start.dr["Geraetebezeichnung"].ToString();
    cboGruppe.Items.Add(frmStart.Start.dr["Gruppenname"].ToString());

}

so greif ich auf die daten zu

Moderiert von user profile iconTh69: C#-Tags hinzugefügt


Andreas L. - Fr 20.01.12 17:43

user profile iconphilip93 hat folgendes geschrieben Zum zitierten Posting springen:
wie speichere ich nun die ID der ausgewählen Gerätegruppe?


Wie meinst du das? Wo willst du die ID abspeichern?


philip93 - Fr 20.01.12 18:06

Wie du sehen kannst wähle ich den Gruppenname aus der Tabelle Gerätegruppe und in der Tabelle Geräte ist auch die GerätegruppeID gespeichert. Ich möchte dass wenn ich die Gerätegruppe auswähle, dass die ID der gewählten Gerätegruppe in der Tabelle Geräte geändert wird


Andreas L. - Fr 20.01.12 18:26

Das kannst du mit einem weiteren Statement realisieren:


SQL-Anweisung
1:
2:
3:
4:
5:
6:
  UPDATE
    tblGeraete
  SET
    tblGeraete.ID_Geraet = "Neuer Wert"  
  WHERE
    tblGeraete.ID_Geraet = "Alter Wert"


philip93 - Fr 20.01.12 19:13

Was nutzt mir die ID vom Gerät? Nix
tblGeraete.ID_Geraetegruppe soll mit der GeraetegruppeID der Combobox aktualisiert werden.

Ich brauche es dringend is mei letzter Fehler für meinen Teil unsere Maturaprojektes und ich bin scho 3 stunden dran gsessen um eine lösung zu finden