Diskuze: Uložení dat

Ostatní jazyky SQL SQL a databáze Uložení dat

Avatar
Maros2470
Člen
Avatar
Maros2470:

Mám dotaz jak v tomto případě uložím data do databáze? Jedná se o CE databázi.

private void pridejButton_Click(object sender, EventArgs e)
        {
            string predvolbyId = predvolbyIdTextBox.Text; // definice proměnných
            string predvolby = predvolbyTextBox.Text;  // definice proměnných
            string zeme = zemeTextBox.Text;  // definice proměnných

            if (label2.Text == predvolbyTextBox.Text)

                MessageBox.Show("Zadání předvolby je duplicitní!!!", "Předvolba", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            else

                if (label3.Text == zemeTextBox.Text)
                    MessageBox.Show("Zadání země je duplicitní!!!", "Země", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                else

                    if (predvolbyTextBox.Text.Length < 3)
                        MessageBox.Show("Zadání předvolby je příliš krátké!!!", "Předvolba", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                    else

                        if (zemeTextBox.Text.Length < 3)
                            MessageBox.Show("Zadání země je příliš krátké!!!", "Země", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                        else
               {
                    string connectionString = @"Data Source=Data.sdf";  // definice adresy databáze
                    using (SqlCeConnection spojeni = new SqlCeConnection(connectionString))  // nové připojení
                    {
                        spojeni.Open();  // připojení databáze
                        string prikazPridej = "INSERT INTO PredvolbyTelefonu (Predvolby, Zeme) VALUES (@predvolby, @zeme)"; // SQL příkaz
                        using (SqlCeDataAdapter adapter = new SqlCeDataAdapter(prikazPridej, spojeni))

                        using (DataSet vysledky = new DataSet())
                        {
                            adapter.SelectCommand.Parameters.AddWithValue("@predvolby", predvolby); // zadání proměnných do příkazu
                            adapter.SelectCommand.Parameters.AddWithValue("@zeme", zeme); // zadání proměnných do příkazu
                            adapter.Fill(vysledky);

                        }


                        spojeni.Close(); // odpojení databáze
                        }

                            predvolbyIdTextBox.Clear(); predvolbyTextBox.Clear(); zemeTextBox.Clear(); // vyčistí TextBox
                            predvolbyTextBox.Focus(); // Dá focus na předvolbu

                            predvolbyDataGrid.Rows.Clear(); // vyčištění dataGrid

                            string connectionString1 = @"Data Source=Data.sdf";  // definice adresy databáze
                            using (SqlCeConnection spojeni = new SqlCeConnection(connectionString1))  // nové připojení
                        {
                        spojeni.Open(); // připojení databáze

                        string dotazPredvolby = "SELECT * FROM PredvolbyTelefonu";  // SQL příkaz
                        using (SqlCeDataAdapter adapter = new SqlCeDataAdapter(dotazPredvolby, spojeni))
                        using (DataSet vysledky = new DataSet())
                            {
                                adapter.Fill(vysledky);
                                foreach (DataRow radek in vysledky.Tables[0].Rows)
                                {
                                    predvolbyDataGrid.Rows.Add(radek["PredvolbyId"], radek["Predvolby"], radek["Zeme"]); // ddataGrig vypíše hodnoty
                                    label2.Text = radek["Predvolby"].ToString();
                                    predvolbyIdTextBox.Text = radek["PredvolbyId"].ToString();
                                }
                            }
                            spojeni.Close(); // odpojení databáze
                        }
               }

        }

Díky za radu

 
Odpovědět 17.5.2014 16:41
Avatar
Lako
Člen
Avatar
Odpovídá na Maros2470
Lako:

Měl bys to dát spíš do .netí diskuze..
Používej Entity Framework, vyhneš se tomu obstaróžnímu dotazování do databáze pomocí stringů.

 
Nahoru Odpovědět 18.5.2014 22:17
Avatar
Odpovídá na Maros2470
Michal Štěpánek:

zde
http://www.itnetwork.cz/…379bbb28d531
jsem ti na to odpověděl...
Ale jak píše Lako , EF je úspornější na psaní kódu...
Teprve do EF pomalu pronikám, ale líbí se mi čím dál tím víc.. 8-)

Nahoru Odpovědět 19.5.2014 15:43
Nikdy neříkej nahlas, že to nejde. Vždycky se totiž najde blbec, který to neví a udělá to...
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 3 zpráv z 3.