PDA

View Full Version : رکوردی که اضافه میکنم به دیتابیس اضافه نمیشه!



hanieh66
شنبه 17 شهریور 1386, 18:34 عصر
سلام. (اول بگم که مطلب رو جستجو کردم اما چیزی که مشکلم رو حل کنه پیدا نکردم)

من قبلا توی 2003 #C می تونستم فقط با تعریف یک command و دادن query بهش ، هر کاری که دلم می خواست رو انجام بدم.اما الان مشکل دارم. اطلاعاتم در بانک ذخیره نمی شه!!!

مثلا برای اضافه کردن یک رکورد به بانک اطلاعاتی اکسس به اینصورت می نویسم :




privatebool insert_Into_Industory(int _productID, string _productName)
{
bool blnInsertedOK = true ;
string queryInsert = "INSERT INTO Industory (ID,Name) VALUES (@ID,@Name)";
OleDbCommand cmdInsert = newOleDbCommand(queryInsert, conIndustory);
cmdInsert.Parameters.AddWithValue("@ID", _productID);
cmdInsert.Parameters.AddWithValue("@Name", _productName );

try
{
if (conIndustory.State == ConnectionState.Closed)
conIndustory.Open();

if (cmdInsert.ExecuteNonQuery() <= 0)
blnInsertedOK = false;
else
daTest.Update(dsTest.Industory );
}
catch (Exception ex)
{
blnInsertedOK = false;
MessageBox.Show("Error <insert_Into_Industory> : " + ex.Message);
}
finally { conIndustory.Close(); }

return blnInsertedOK;
}



به دیتاست اضافه می کنه اما به خود بانک اطلاعاتی رو دیسک اضافه نمی کنه!!! چرا؟؟؟؟
در ضمن دیتابیسم رو بصورت Local استفاده می کنم.
البته چندجور دیگه هم امتحان کردم اما بازم فرقی نکرد! مثلا بکمک متدهای Insert , Update خود DataAdapter که خود Visual برام می سازه.
و یا با کدنویسی ،خودم براش یک دیتاآداپتر و یک CommandBuilder تعریف کردم و Insert رو ازش گرفتم. بازم فایده ای نداشت.

لطفا بگید مشکل کار من کجاست.باید چکار کنم؟؟گیچ شدم.

Mrs.Net
شنبه 17 شهریور 1386, 20:22 عصر
احتیاج به (daTest.Update(dsTest.Industory نبود و فقط باید خط ExecuteNonQuery کار انجام بده.
آیا خطایی میده؟ اگه هیچ خطایی نمیگیره پس چک بکن ببین همون فیلدها با اون نام در بانکت هست یا نه.

hanieh66
شنبه 17 شهریور 1386, 21:09 عصر
احتیاج به (daTest.Update(dsTest.Industory نبود و فقط باید خط ExecuteNonQuery کار انجام بده.

آره درست می گید. اما در هر دو صورت (چه update بذارم و چه نذارم) الان داره درست جواب می ده!!!



آیا خطایی میده؟ اگه هیچ خطایی نمیگیره پس چک بکن ببین همون فیلدها با اون نام در بانکت هست یا نه.

مشکل از اونجا نیست.


خیلی دلم می خواد بدونم مشکلش چی بوده که منو 2 روز مشغول کرده بود