50٪ تخفیف روی تمام دوره‌ها!
پایان تخفیف تا:
مشاهده دوره‌ها
0

درج (Insert) داده در جدول با C#

سلام

از C# تو VS2010 و بانک Sqlexpress استفاده میکنم

با کد زیر داده رو میخوام به جدول مربوطه در بانکم اضافه کنم. دستور هیچ خطایی نمیگیره، ولی هیچ داده ای هم به بانک اضافه نمیکنه

       private void btnbuildregister_Click_1(object sender, EventArgs e)
        {

            SqlConnection objConnection = new SqlConnection();
            string str = "Data Source=.\\SQLEXPRESS;AttachDbFilename=|DataDirectory|\\ord-95.mdf;Integrated Security=True;User Instance=True";
            objConnection.ConnectionString = str;

            //SqlConnection("Data Source=.\\SQLEXPRESS; AttachDbFilename=" + Application.StartupPath + "\\ord-95.mdf; Integrated Security=True; Connect Timeout=30; User Instance=True");
            
            SqlCommand objCommand = new SqlCommand();
            objCommand.Connection = objConnection;


            objCommand.CommandText = @"insert into [build] " +
            "(buildname) " +
            "VALUES(@buildname)";

            objCommand.Parameters.AddWithValue("@buildname", txtbuild.Text);

            objConnection.Open();
            objCommand.ExecuteNonQuery();
            objConnection.Close();

            MessageBox.Show("ثبت با موفقیت انجام شد", "پیغام",
                MessageBoxButtons.OK, MessageBoxIcon.Information);

            lblbuild.Hide();
            txtbuild.Hide();
            txtbuild.Text = "";
            btnbuildregister.Hide();

        }

جالب اینجاست که وقتی با کد زیر جدول رو تو datagrideview نگاه میکنم داده ای که اضافه کردم رو نشون میده ولی اینم تا وقتی هست که از برنامه بیرون نیومده باشم.

        private void showTabla_Load(object sender, EventArgs e)
        {

            SqlConnection con = new SqlConnection();
            string str = "Data Source=.\\SQLEXPRESS;AttachDbFilename=|DataDirectory|\\ord-95.mdf;Integrated Security=True;User Instance=True";

            con.ConnectionString = str;

            SqlCommand cmd = new SqlCommand();
            cmd.Connection = con;
            cmd.CommandText = "select * from seller";

            SqlDataAdapter da = new SqlDataAdapter(cmd);

                     
            DataTable dt = new DataTable();
            da.Fill(dt);
            dataGridView1.DataSource = dt;

            dataGridView1.Columns[0].HeaderCell.Value = "Created";
        }
پرسیده شده در 1395/03/28 توسط

5 پاسخ

1

سلام به شما itpro ای عزیز.

هر وقت که شما برنامه رو دوباره build همه داده های بانک شما خالی میشه و بانک هم دوباره از اول ساخته میشه. کد شما مشکلی نداره فقط این مشکل sql express هست که بانک رو توی مسیر فایل اجرایی میسازه اینجوری میشه.

پاسخ در 1395/03/28 توسط
0

با سلام

شما ببین در خط 21 متد ExecuteNonQuery چه عددی رو بر می گردونه!

پاسخ در 1395/04/26 توسط
1

سلام دوست عزیز راه حل اینه

روی بانک اطلاعاتی که داخل solution explorer هست کلیک راست کرده و propertiseرا بزنید سپس خاصیت copy to output directory را روی do not copy قرار بدید مشکل رفع میشه

پاسخ در 1395/04/26 توسط
آواتار . .
0

خب راه حل چیه

چی کار باید بکنم تا این مشکل رفع بشه

پاسخ در 1395/03/30 توسط

پاسخ شما