PDA

نسخه کامل مشاهده نسخه کامل : کدي که براي جستجو در بانک نوشتم فقط يکبار عمل جستجو رو انجام ميده



sa_2077
22-07-2006, 22:30
سلام
1
کدي که براي جستجو در بانک نوشتم فقط يکبار عمل جستجو رو انجام ميده و در دفعات بعدي هيچ کاري نميکنه ارور هم نميده.

2
زمانيکه يک داده رو از طريق ديتا گريد به بانک اضافه ميکنم وقتي براي جلوگيري ازاضافه کردن داده تکراري يک
پيغام خطا طراحي ميکنم با اضافه کردن اولين داده تکراري ديگه بقيه دادهاي ورودي غير تکراري رو هم اد نميکنه
اگر پيغام رو حذف کنم خودش تکراري ها رو اد نميکنه ولي کاربر نميفهمه که داده تکراري وارد کرده چه کار کنم که
با دادن پيغام تکراري بودن داده درست هم کار کنه.

NoneForce
23-07-2006, 10:18
سلام
ميشه كدي را كه نوشتيد اينجا ذكر كنيد

sa_2077
23-07-2006, 15:36
اين كدي كه گفتم:

Try

OleDbDataAdapter1.SelectCommand.Parameters("ID_Number").Value() = ComboBox3.Text
OleDbDataAdapter1.Fill(DataSet31)
Catch ex As FormatException
Catch s As System.IO.IOException

End Try

sa_2077
23-07-2006, 15:44
اينم كد:
Try
OleDbDataAdapter1.SelectCommand.Parameters("ID").Value() = ComboBox3.Text
OleDbDataAdapter1.Fill(DataSet31)
Catch ex As FormatException
Catch s As System.IO.IOException

End Try

NoneForce
23-07-2006, 16:35
سلام
اينو يك نگاه بندازيد :

strOleCommand = "SELECT * from tblPhoneBook Where fldName Like '%'&@Name&'%'"
oleDataAdapter.SelectCommand.Connection.Open()
oleDataAdapter.SelectCommand.CommandText = strOleCommand
oleDataAdapter.SelectCommand.Parameters.Add("Name", EditBox1.Text)
oleDataAdapter.SelectCommand.ExecuteNonQuery()
oleDataAdapter.SelectCommand.Connection.Close()

intTemp = oleDataAdapter.Fill(oleDataSetAdmin, "tblPhoneBook")

aminkarami
23-07-2006, 21:16
سلام
ببینید فقط می خواستم بگم که برای این کار معمولا از چیزهای دیگری استفاده می کنند.مثلا برای اینکه چک کنند چه داده ای تکراری هست یا نه با دستور select همونطوری که دوستمون NoneForce نوشتند استفاده کی کنند اگر جواب داشت پس دوباره داده رو اضافه نمی کنند.من فکر می کنم اگر شما از dataset بیرون بیایید و با oledbcommand کار کنید بهتر باشه.

aminkarami
23-07-2006, 21:19
برای کار با dataset کافیه یه حلقه بزارید بعد اونا رو چک کنید.
مثلا
for ( int i=0;i!=dataset11.table1.count();i++);//loop
{
if (dataset11.table1[i].ID_num==combobox1.text;
{
MessageBox.show("Error");
}
else
{
اینجا کد اضافه کردن رو می نویسید
}
}

BlackDal
25-07-2006, 14:20
قبل از انجام عمل جستجو بريد به ابتداي جدول