florian86
Goto Top

C-sharp SQL Select Abfrage vergleichen

Hallo Zusammen,

ich bin noch Neuling was c# angeht. Ich möchte ein Select auf eine DB machen und wenn eine Zeile ausgegeben wird soll eine Meldung kommen, das der Wagen in Verwendung ist
Leider weis ich nicht wie ich meine Variable "select" dahingehend abfragen soll

 int wnr = Convert.ToInt32(textBox1.Text);
            string rez = textBox2.Text;
            string kuehl = textBox3.Text;
            DateTime mydatetime = DateTime.Now;

            string abfrage = "INSERT into hefe (WNR,REZ,KUEHL,EINL) " + "VALUES (@WNR, @REZ, @KUEHL, @EINL)";  
            string updateabfrage = $"SELECT AUSL FROM hefe WHERE WNR = {wnr} and AUSL is null";  
           
            SqlConnection conn = new SqlConnection("Data Source=khdb\\sqlexpress;Initial Catalog=ProdHefe;Integrated Security=True");  
            SqlCommand insert = new SqlCommand(abfrage, conn);
            SqlCommand select = new SqlCommand(updateabfrage, conn);

            // Prüfung ob Wagen noch in Verwendung
            if (select.??????)
            {
                MessageBox.Show("Wagen noch in Verwendung", "Wagennummer", MessageBoxButtons.OK, MessageBoxIcon.Error);  
                System.Environment.Exit(0);
            }


            // SQL  Werte schreiben

            insert.Parameters.AddWithValue("@WNR", wnr);  
            insert.Parameters.AddWithValue("@REZ", rez);  
            insert.Parameters.AddWithValue("@KUEHL", kuehl);  
            insert.Parameters.AddWithValue("@EINL", mydatetime);  
            
            conn.Open();
            insert.ExecuteNonQuery();
            conn.Close();

            textBox1.Text = "";  
            textBox2.Text = "";  
            textBox3.Text = "";  

Content-Key: 566638

Url: https://administrator.de/contentid/566638

Printed on: April 23, 2024 at 15:04 o'clock

Member: Abyssox
Solution Abyssox Apr 22, 2020 at 09:29:29 (UTC)
Goto Top
Hi,

conn.Open();
SqlDataReader reader = select.ExecuteReader();

if (reader.HasRows)
{
    MessageBox.Show("Wagen noch in Verwendung", "Wagennummer", MessageBoxButtons.OK, MessageBoxIcon.Error);  
    System.Environment.Exit(0);
}

https://docs.microsoft.com/de-de/dotnet/framework/data/adonet/retrieving ...

Bin jetzt auch nicht der C# Fachmann aber sollte so funktionieren. Hoffe das hilft dir weiter.

Gruss
Member: Florian86
Florian86 Apr 22, 2020 at 09:51:37 (UTC)
Goto Top
funktioniert danke