PDA

View Full Version : سوال: مشکل insert در access



reza69
جمعه 15 دی 1391, 15:53 عصر
سلام وقتی من داده ها رو وارد access می کنم رکورد وارد شده جای اولین رکورد رو میگیره و رکورد قبلی حذف میشه.مشگل این کد کجاست؟

private void btninsert_Click(object sender, EventArgs e)
{
string myconstring = @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=|DataDirectory|\mydb.accdb";
OleDbConnection connection = new OleDbConnection (myconstring);
OleDbCommand cmd;
connection.Open();
try
{
cmd = connection.CreateCommand();
cmd.CommandText = "insert into mytable(name,family,birthday,regcode,mobile,pictur e)values(@name,@family,@birthday,@regcode,@mobile, @picture)";
cmd.Parameters.AddWithValue("@name", txtname.Text);
cmd.Parameters.AddWithValue("@family", txtfamily.Text);
cmd.Parameters.AddWithValue("@birthday", txtbirthday.Text);
cmd.Parameters.AddWithValue("@regcode", txtregcode.Text);
cmd.Parameters.AddWithValue("@mobile", txtmobile.Text);
cmd.Parameters.AddWithValue("@picture", pictureBox1.Image);
cmd.ExecuteNonQuery();
}
catch (OleDbException ex)
{
MessageBox.Show(ex.ToString());
}
connection.Close();
MessageBox.Show("Done");
}

danialafshari
جمعه 15 دی 1391, 16:16 عصر
کد اد در سورس زیر وجود داره استفاده کنید مشکلی نداره

PhoenixNet
جمعه 15 دی 1391, 17:15 عصر
سلام

موقعی که دیتابیس رو ایجادمیکنید ویژوال استدیو سوال میپرسه که آیا در هرباراجرا دینتابیس رو کپی کنه؟شما بلی رو انتخاب کردید در نتیجه هر بار که برنامه رو اجرا میکنید دیتابیس پاک و دوباره ایجاد میشه!

reza69
جمعه 15 دی 1391, 22:37 عصر
میدونید چجوری مقدار اندازه OLE object در access رو باید اضافه کنم؟

danialafshari
شنبه 16 دی 1391, 17:49 عصر
میدونید چجوری مقدار اندازه OLE object در access رو باید اضافه کنم؟

سلام
برای ذخیره عکس استفاده میشه این لینک (http://barnamenevis.org/showthread.php?377511-%D8%B0%D8%AE%DB%8C%D8%B1%D9%87-%D8%B9%DA%A9%D8%B3&p=1668724&viewfull=1#post1668724) را مشاهده کنید

reza69
شنبه 16 دی 1391, 21:05 عصر
این عبارت یعنی چی؟
حالا این آرایه رو در فیلد مربوط به عکس ذخیره کن

SqlCommand sqlcom = new SqlCommand();
sqlcom.Parameters.AddWithValue("@image", SqlDbType.Image).Value = picbyte;
or
SqlCom.Parameters.Add(new SqlParameter("@Image", (object)picbyte);
or
sqlcom.Parameters.AddWithValue("@image", (object)picbyte) ;