PDA

View Full Version : سوال: مشکل در ذخیره ،ویرایش و همچنین حذف اطلاعات از بانک



iran_sky
جمعه 09 دی 1390, 22:32 عصر
با سلام به دوستان

دوستان عزیز من با این کدها اطلاعات رو در بانک ذخیره ، ویرایش و حذف میکنم اما زمانی که دوبار پشت سرهم میخوام اطلاعات رو ذخیره ، ویرایش و حذف کنم پیغام خطا میده
ممنون میشم کمکم کنید

کدها:

namespace Hotel
{
publicpartialclassmoshtare : Form
{
public moshtare()
{
InitializeComponent();
}

SqlConnection conn = newSqlConnection(@"Data Source=MORTEZA-PC\SQLEXPRESS;Initial Catalog=Hotel;Integrated Security=True");
SqlCommand cmd = newSqlCommand();
DataSet ds = newDataSet();
SqlDataAdapter dta;

privatevoid btn_exit_Click(object sender, EventArgs e)
{
this.Close();
}
privatevoid btn_save_Click(object sender, EventArgs e)
{
try
{

cmd.Connection = conn;
cmd.CommandText = "insert into moshtare values(@code_moshtare, @name, @family, @code_meli, @tel, @city, @t_vorod, @time_e, @t_takht, @gh_otagh, @pish, @mod)";cmd.Parameters.AddWithValue("code_moshtare",text_code_moshtare.Text);
cmd.Parameters.AddWithValue("name", text_name.Text);
cmd.Parameters.AddWithValue("family", text_family.Text);
cmd.Parameters.AddWithValue("code_meli", Convert.ToInt64(text_code_meli.Text));
cmd.Parameters.AddWithValue("tel", text_tel.Text);
cmd.Parameters.AddWithValue("city", text_city.Text);
cmd.Parameters.AddWithValue("t_vorod", text_t_vorod.Text);
cmd.Parameters.AddWithValue("time_e", Convert.ToInt16(text_time_e.Text));
cmd.Parameters.AddWithValue("t_takht", Convert.ToInt16(text_t_takht.Text));
cmd.Parameters.AddWithValue("gh_otagh", Convert.ToInt64(text_gh_otagh.Text));
cmd.Parameters.AddWithValue("pish", Convert.ToInt64(text_pish.Text));
cmd.Parameters.AddWithValue("mod", Convert.ToInt64(text_mod.Text));
ds.Clear();
conn.Open();
cmd.ExecuteNonQuery();
conn.Close();
dta.Fill(ds, "moshtare");
dgv_moshtare.DataSource = ds;
dgv_moshtare.DataMember = "moshtare";
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
privatevoid moshtare_Load(object sender, EventArgs e)
{
//

try
{
dta = newSqlDataAdapter("select * from moshtare", conn);
ds.Clear();
conn.Open();
dta.Fill(ds, "moshtare");
conn.Close();
dgv_moshtare.DataSource = ds;
dgv_moshtare.DataMember = "moshtare";
privatevoid btn_edit_Click(object sender, EventArgs e)
{
try
{

cmd.Connection = conn;
cmd.CommandText = "update moshtare set code_moshtare=@p1, name=@p2, family=@p3, code_meli=@p4,tel=@p5, city=@p6, t_vorod=@p7, time_e=@p8, t_takht=@p9, gh_otagh=@p10, pish=@p11, mod=@p12 where code_moshtare=@code_moshtare";
cmd.Parameters.AddWithValue("p1",Convert.ToInt16( text_code_moshtare.Text));
cmd.Parameters.AddWithValue("p2", text_name.Text);
cmd.Parameters.AddWithValue("p3",text_family.Text);
cmd.Parameters.AddWithValue("p4",Convert.ToInt64( text_code_meli.Text));
cmd.Parameters.AddWithValue("p5", text_tel.Text);
cmd.Parameters.AddWithValue("p6", text_city.Text);
cmd.Parameters.AddWithValue("p7", text_t_vorod.Text);
cmd.Parameters.AddWithValue("p8",Convert.ToInt16( text_time_e.Text));
cmd.Parameters.AddWithValue("p9",Convert.ToInt16( text_t_takht.Text));
cmd.Parameters.AddWithValue("p10", Convert.ToInt64(text_gh_otagh.Text));
cmd.Parameters.AddWithValue("p11",Convert.ToInt64(text_pish.Text));
cmd.Parameters.AddWithValue("p12", Convert.ToInt64(text_mod.Text));
conn.Open();
cmd.ExecuteNonQuery();
conn.Close();
ds.Clear();
dta.Fill(ds, "moshtare");
dgv_moshtare.DataSource = ds;
dgv_moshtare.DataMember = "moshtare";
}
catch (Exception)
{

throw;
}
}
privatevoid btn_delete_Click(object sender, EventArgs e)
{
if (dgv_moshtare.RowCount >= 0)
{
if (MessageBox.Show(" ", "Delete", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
{

cmd.Connection = conn;
cmd.CommandText = "delete from moshtare where code_moshtare=@code_moshtare";
cmd.Parameters.AddWithValue("code_moshtare", Convert.ToInt16(text_code_moshtare.Text));
conn.Open();
cmd.ExecuteNonQuery();
conn.Close();
ds.Clear();
dta.Fill(ds, "moshtare");
dgv_moshtare.DataSource = ds;
dgv_moshtare.DataMember = "moshtare";
}
}

}


اینم خطا:

http://up.iranblog.com/images/1kovkhlzxvb2sdotn2fg.png

mmd2009
جمعه 09 دی 1390, 22:44 عصر
با سلام

لطفا پیام خطارو بذارید تا اگر کسی خواست کمک بکنه حداقل دلیل خطا رو بدونه.

موفق باشید

sadra1234
شنبه 10 دی 1390, 10:41 صبح
دوست عزیز معمولا در ابتدای کد باید dataset , datatable رو خالی کنی
اینطور


ds.clear();
dt.clear();

system32
شنبه 10 دی 1390, 14:09 عصر
چرا پس برای این جمله پارامتری را که گفتم قرار ندادید:
where code_moshtare=@code_moshtare
باید بشه مثلا

where code_moshtare=@p13
بعد هم تو AddParameter تعریفش کن.