• 21-07-2014, 13:45:06
    #1
    Merhabalar, SQL'e girdiğim firmalara masaüstünden yetkili ataması yapmak istiyorum. Firma adlarını combobox'a çekiyorum. Yetkili girişini yapıp, SQL'e gönderiyorum. Kayıt ve yetkili görüntüleme işi tamam. İstediğim şu comboboxtan seçim yaptığım Firmanın Id'si Yetkililer tablosundaki FirmaId kısmına atanması. Bunu nasıl yapabilirim? Dil C#
  • 21-07-2014, 14:50:23
    #2
    Görüntüleme kısmında:

    var firmalar = //sql sorgunuz sonucu çektiğiniz tüm firmaların listesi

    this.firmalar_Combo.DataSource = firmalar;
    this.firmalar_Combo.ValueMember = "ID";
    this.firmalar_Combo.DisplayMember = "FirmaAdi";

    yaptıktan sonra;
    comboboxda seçili firmanın idsini firmalar_Combo.SelectedValue şeklinde alıp, yetkili firmalar tablosuna bu id ile insert yapabilirsiniz
  • 21-07-2014, 17:41:39
    #3
    Attığınız pm üzerine kabaca böyle yaparsanız olur gibi

                string conStr = "connectionstring buraya yazılır";
                DataTable dt = new DataTable();
    
                using(var cn = new SqlConnection(conStr)) 
                {
                    using(var cmd = new SqlCommand("select ID, FirmaAdi from dbo.FirmaBilgileri", cn)) 
                    {
                        cn.Open();
    
                        try
                        {
                            dt.Load(cmd.ExecuteReader());
                        }
                        catch(Exception ex)
                        {
                            MessageBox.Show("Hata: " + ex.Message, "Hata");
                        }
    
                    }
                }
    
    
                //Eğer verileri listview componentinde göstermek isterseniz
                if (dt.Rows.Count > 0)
                {
                    foreach(DataRow dr in dt.Rows)
                    {
                        ListViewItem listItem = new ListViewItem();
                        listItem.Text = dr["FirmaAdi"].ToString();
                        firmaListesi.Items.Add(listItem);
                    }
                }
    
                //Eğer verileri comboboxda göstermek isterseniz
                cbmFirma.DataSource = dt;
                cbmFirma.ValueMember = "ID"; // comboboxa koyduğumuz firmanın sql idsi
                cbmFirma.DisplayMember = "FirmaAdi";  // comboboxda gözükecek yazı
    
    
                //Combobox'da seçili firmayı ele alıp başka bir tabloya insert etme
                if (cbmFirma.SelectedValue != null)
                {
                    int firmaID = Convert.ToInt32(cbmFirma.SelectedValue);
                    string firmaAdi = cbmFirma.SelectedText;
    
                    using (var cn = new SqlConnection(conStr))
                    {
                        string sql =  "INSERT INTO dbo.YetkiliFirmalar (ID, FirmaAdi) VALUES(@param1, @param2)";
                        SqlCommand cmd = new SqlCommand(sql, cn);
                        cmd.Parameters.Add("@param1", SqlDbType.Int).Value = firmaID;
                        cmd.Parameters.Add("@param2", SqlDbType.VarChar, 50).value = firmaAdi;
                        cmd.CommandType = CommandType.Text;
                        cmd.ExecuteNonQuery();
                    }
                }
            }

    Ya da bunların hepsini boşverin, entity framework öğrenin herkes mutlu olsun =)
  • 22-07-2014, 09:24:26
    #4
    Mashadow adlı üyeden alıntı: mesajı görüntüle
    Attığınız pm üzerine kabaca böyle yaparsanız olur gibi

                string conStr = "connectionstring buraya yazılır";
                DataTable dt = new DataTable();
    
                using(var cn = new SqlConnection(conStr)) 
                {
                    using(var cmd = new SqlCommand("select ID, FirmaAdi from dbo.FirmaBilgileri", cn)) 
                    {
                        cn.Open();
    
                        try
                        {
                            dt.Load(cmd.ExecuteReader());
                        }
                        catch(Exception ex)
                        {
                            MessageBox.Show("Hata: " + ex.Message, "Hata");
                        }
    
                    }
                }
    
    
                //Eğer verileri listview componentinde göstermek isterseniz
                if (dt.Rows.Count > 0)
                {
                    foreach(DataRow dr in dt.Rows)
                    {
                        ListViewItem listItem = new ListViewItem();
                        listItem.Text = dr["FirmaAdi"].ToString();
                        firmaListesi.Items.Add(listItem);
                    }
                }
    
                //Eğer verileri comboboxda göstermek isterseniz
                cbmFirma.DataSource = dt;
                cbmFirma.ValueMember = "ID"; // comboboxa koyduğumuz firmanın sql idsi
                cbmFirma.DisplayMember = "FirmaAdi";  // comboboxda gözükecek yazı
    
    
                //Combobox'da seçili firmayı ele alıp başka bir tabloya insert etme
                if (cbmFirma.SelectedValue != null)
                {
                    int firmaID = Convert.ToInt32(cbmFirma.SelectedValue);
                    string firmaAdi = cbmFirma.SelectedText;
    
                    using (var cn = new SqlConnection(conStr))
                    {
                        string sql =  "INSERT INTO dbo.YetkiliFirmalar (ID, FirmaAdi) VALUES(@param1, @param2)";
                        SqlCommand cmd = new SqlCommand(sql, cn);
                        cmd.Parameters.Add("@param1", SqlDbType.Int).Value = firmaID;
                        cmd.Parameters.Add("@param2", SqlDbType.VarChar, 50).value = firmaAdi;
                        cmd.CommandType = CommandType.Text;
                        cmd.ExecuteNonQuery();
                    }
                }
            }

    Ya da bunların hepsini boşverin, entity framework öğrenin herkes mutlu olsun =)
    Teşekkürler hocam, emeğinize sağlık.