tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
1
ZUGRIFFE
2948
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    astra80 astra80 ist offline Rookie
    Registriert seit
    Dec 2004
    Beiträge
    6
    moin,

    ich schreib grad an einem cocktailprogramm(sehr wichtig...).
    ich hab zur zeit zwei tabellen und zwar eine die cocktails
    und eine die alkoholsorten enthält. jetzt liste ich die namen
    der cocktails in einer listbox auf. klicke ich auf einen namen
    drauf so soll natürlich die jeweilige alkoholsorte die zu dem
    cocktail gehört in einer combox angezeigt werden, wo
    im vorfeld schon alle verfügbaren alkoholsorten geladen
    wurden. problem: es geht nich. datarelation hab ich schon ma
    versucht aber nicht hinbekommen. wär nett wenn mir jemand
    helfen könnte. kein plan mehr...
    hier ma der code den ich schon hab:


    private DataSet ds = new DataSet();
    private DataRow AlcRow;

    private void Form1_Load(object sender, System.EventArgs e)
    {

    MySqlConnection cn = new MySqlConnection();
    DataSet ds = new DataSet();

    cn.ConnectionString = "Database=cocktail;Data Source=localhost;User ID=root;Password=";


    MySqlCommand cmd = new MySqlCommand();
    cmd.CommandText = "SELECT * FROM cocktail";
    cmd.Connection = cn;

    MySqlDataAdapter da = new MySqlDataAdapter();
    da.SelectCommand = cmd;
    da.Fill(ds, "cocktail");


    cmd.CommandText = "SELECT * FROM alkohol";
    cmd.Connection = cn;


    da.SelectCommand = cmd;
    da.Fill(ds, "alkohol");

    listBox1.DataSource = ds.Tables["cocktail"];
    listBox1.DisplayMember = "name";

    comboBox1.DataSource = ds.Tables["alkohol"];
    comboBox1.DisplayMember = "name";
    }

    private void listBox1_SelectedIndexChanged(object sender, System.EventArgs e)
    {
    AlcRow = ds.Tables["alkohol"].Select("nr = " + ds.Tables["cocktail"].Rows[listBox1.SelectedIndex]["aalkohol"].ToString())[0];
    comboBox1.SelectedText = AlcRow["name"].ToString();
    }




    DB:
    tabelle alkohol: nr->int,name->varchar
    tabelle cocktail: nr->int,name->varchar,aalkohol->int
     

  2. #2
    Geldschwimmer69 Geldschwimmer69 ist offline Grünschnabel
    Registriert seit
    May 2006
    Beiträge
    1
    Hallo, astra80

    ich programmiere zur Zeit auch an einem Cocktailprogramm in Java. Die erste Version war auch in VB bzw. Delphi.
    Mir fällt auf, das dein Datenbankkonzept nicht so richtig geeignet ist, um ein komplexes Objekt wie einen Cocktail mit seinen einzelnen Schritten, den Zutaten, dem Glas und die Zubereitungsart (Blender, Shaken, Rühren, Bauen) abzubilden.
    Im Prinzip musst du die Alkohol-Zugehörigkeit nicht in der Cocktailtabelle, sondern bei dem Alkohol selbst speichern.
    Mehrere "Alkoholzeilen" verweisen dann auf ein und den selben Cocktail.
    Wenn du diese Struktur anwendest, kannst du ganz einfach mit einem INNER JOIN die entsprechenden Alkoholsorten von einem ausgewählten Cocktail herausfinden.

    Du kannst dir gerne meine Datenbankstruktur mit zur Zeit 13 Entities (Tabellen) anschauen. Es handelt sich um die HSQL.sql - file.

    Meine Homepage mit dem freien Cocktailprogramm:
    http://dschaen.kiba.info

    Das Cocktailprogramm hat mittlerweile schon 900 Arbeitsstunden hinter sich.
    Auf einen Besuch würde ich mich sehr freuen

    LG
    Geldschwimmer69
     

Ähnliche Themen

  1. [SQL] 2 Tables miteinander Vergleichen
    Von marcaurel1984 im Forum Relationale Datenbanksysteme
    Antworten: 4
    Letzter Beitrag: 26.02.08, 14:56
  2. [VB6] Zahlen miteinander vergleichen
    Von Masterclavat im Forum Visual Basic 6.0
    Antworten: 1
    Letzter Beitrag: 14.02.08, 21:01
  3. Drei Zahlen miteinander vergleichen
    Von Moritz123 im Forum PHP
    Antworten: 8
    Letzter Beitrag: 15.09.06, 10:35
  4. Punkte miteinander vergleichen(MX)
    Von dirkgently im Forum Flash Plattform
    Antworten: 4
    Letzter Beitrag: 02.08.03, 20:06
  5. Datum miteinander vergleichen
    Von Kopfballstar im Forum Relationale Datenbanksysteme
    Antworten: 1
    Letzter Beitrag: 27.04.02, 19:12