PDA

View Full Version : سوال: اشکال در insert در دیتابیس



PajohanCo
دوشنبه 16 آذر 1388, 22:12 عصر
با سلام
من تازه کارم از دوستان میخوام کمکم کنند.
من یه گرید ویو دارم، وقتی با sqlCommand اینسرت میکنم(executeNonQuery) در دیتاگریدویو سطر اضافه میشود ولی در جدول اصلی تغییری ایجاد نمیشود.

پیشاپیش متشکرم.

neda_dela
دوشنبه 16 آذر 1388, 23:08 عصر
با سلام
من تازه کارم از دوستان میخوام کمکم کنند.
من یه گرید ویو دارم، وقتی با sqlCommand اینسرت میکنم(executeNonQuery) در دیتاگریدویو سطر اضافه میشود ولی در جدول اصلی تغییری ایجاد نمیشود.

پیشاپیش متشکرم.


SqlConnection myConnection = new SqlConnection("Data Source=.;Initial Catalog=quran;Integrated Security=True");
SqlCommand objCommand = new SqlCommand();
objCommand.Connection = myConnection;
objCommand.CommandText = "INSERT INTO [st-shakhsi] (firstname,lastname, id)VALUES(@fname,@lname, @i)";
objCommand.Parameters.Add(new SqlParameter("@fname", (object)textBox2.Text));
objCommand.Parameters.Add(new SqlParameter("@lname", (object)textBox3));
objCommand.Parameters.Add(new SqlParameter("@i", (object)textBox4));
myConnection.Open();
objCommand.ExecuteNonQuery();
rookhani_Load(sender, e);
MessageBox.Show("اطلاعات با موفقیت ذخیره شد");
myConnection.Close();

PajohanCo
سه شنبه 17 آذر 1388, 12:15 عصر
سلام این کد را اجرا کردم پیغام اضافه شدن رکورد را میده حتی در گریدویو هم اونو نمایش میده ولی در جدول واقعی رکوردی اضافه نمیشه.

morteza271
سه شنبه 17 آذر 1388, 13:11 عصر
فکر کنم مشکلتون از String SqlConnection باشه من با String زیر نوشتم کار کرد شما هم امتحان کنید اگه درست نشد کمی تغییرش بدین درست میشه...
موفق باشید...

ُString :
Data Source=.\SQLEXPRESS;Timeout = 60;AttachDbFilename=|DataDirectory|\ahdaf.mdf;Inte grated Security=True;User Instance=True

به جای ahdaf.mdf اسم دیتابیس خودتو بذار...

neda_dela
سه شنبه 17 آذر 1388, 17:49 عصر
سلام این کد را اجرا کردم پیغام اضافه شدن رکورد را میده حتی در گریدویو هم اونو نمایش میده ولی در جدول واقعی رکوردی اضافه نمیشه.
میشه کدهای قبلی ات رو بذاری ببینیم؟ همین هایی بوده که من گفتم یا نه چیز دیگه بوده؟

PajohanCo
سه شنبه 17 آذر 1388, 20:03 عصر
میشه کدهای قبلی ات رو بذاری ببینیم؟ همین هایی بوده که من گفتم یا نه چیز دیگه بوده؟

تقریبا همون کده:


SqlConnection objCon = new SqlConnection("Data Source=.\\SQLEXPRESS;Timeout = 60;AttachDbFilename=|DataDirectory|\\Database1.mdf ;Integrated Security=True;User Instance=True");

private void button1_Click(object sender, EventArgs e)
{
SqlCommand objComm = new SqlCommand("insert into table1 values('1','1')", objCon);
objCon.Open();
objComm.ExecuteNonQuery();
MessageBox.Show("Inserted");
Form1_Load(sender, e);
objCon.Close();
}

neda_dela
سه شنبه 17 آذر 1388, 22:07 عصر
تقریبا همون کده:


SqlConnection objCon = new SqlConnection("Data Source=.\\SQLEXPRESS;Timeout = 60;AttachDbFilename=|DataDirectory|\\Database1.mdf ;Integrated Security=True;User Instance=True");

private void button1_Click(object sender, EventArgs e)
{
SqlCommand objComm = new SqlCommand("insert into table1 values('1','1')", objCon);
objCon.Open();
objComm.ExecuteNonQuery();
MessageBox.Show("Inserted");
Form1_Load(sender, e);
objCon.Close();
}

اس کیو ال کانکشنت رو دقیقا مثل همون کدی که دادم بنویس بقیه رو هم همین طور ببین درست نمیشه؟
منم این کدت رو امتحان می کنم ببینم چی می شه

PajohanCo
چهارشنبه 18 آذر 1388, 11:48 صبح
اس کیو ال کانکشنت رو دقیقا مثل همون کدی که دادم بنویس بقیه رو هم همین طور ببین درست نمیشه؟


متاسفانه باز هم جواب نداد، ببخشید منظور از initial catalog چیه، فکر میکنم اشکال کار از همینه.
(در ضمن ازتون خیلی متشکرم که کمکم میکنید.)

M.YasPro
چهارشنبه 18 آذر 1388, 13:03 عصر
ببخشید منظور از initial catalog چیه، فکر میکنم اشکال کار از همینه.
نام دیتابیس
initial catalog=database name

neda_dela
چهارشنبه 18 آذر 1388, 14:05 عصر
متاسفانه باز هم جواب نداد، ببخشید منظور از initial catalog چیه، فکر میکنم اشکال کار از همینه.
(در ضمن ازتون خیلی متشکرم که کمکم میکنید.)
به قول دوستمون آره باید اینجا اسم دیتا بیس تون رو بذارید . اسم دیتا بیس من quran هست
به جای data source هم باید اسن سیستمت رو بذاری که البته سعی کن همیشه نقطه (.) بذاری نقطه به معنی همون نام سیستم هست
:لبخندساده:

PajohanCo
چهارشنبه 18 آذر 1388, 16:10 عصر
خوشبختانه مشکل حل شد :لبخندساده:
پروژه جدیدی ساختم، این دفعه برخلاف دفعات قبل دیتابیس را در solution اضافه نکردم بجاش فایل دیتابیسم را در پوشه bin\debug کپی کردم. کانکشن استرینگ هم اینو قرار دادم:


"Data Source=.\\SQLEXPRESS;AttachDbFilename=|DataDirecto ry|\\libDB.mdf;Integrated Security=True;User Instance=True"

از تمامی دوستان(مخصوصا neda_dela ی عزیز) که منو تو حل این مشکل کمک کردن سپاسگذاری میکنم.
یا علی