سلام
میخواستم کدی بنویسم که موقع ثبت اطلاعات در بانک اطلاعات با استفاده از جستجو مقدار یک فیلد رو در بانک چک کنه که اگر اون مقدار تکراری بود اطلاعات رو وارد نکنه و پیغام بده و درغیر اینضورت اطلاعات رو در بانک اضافه کنه
لطفا کمک کنید
سلام
میخواستم کدی بنویسم که موقع ثبت اطلاعات در بانک اطلاعات با استفاده از جستجو مقدار یک فیلد رو در بانک چک کنه که اگر اون مقدار تکراری بود اطلاعات رو وارد نکنه و پیغام بده و درغیر اینضورت اطلاعات رو در بانک اضافه کنه
لطفا کمک کنید
سلام
علت اینکه کسی که سوالات اخیر شم جواب نمیده اینه که همش تکراری و درخواست سورس و ... هست که خلافه.
شما وقتی میخوای ببینی قبلا رکوردی هست یا نه چیکار میکنی؟میخواستم کدی بنویسم که موقع ثبت اطلاعات در بانک اطلاعات با استفاده از جستجو مقدار یک فیلد رو در بانک چک کنه که اگر اون مقدار تکراری بود اطلاعات رو وارد نکنه و پیغام بده و درغیر اینضورت اطلاعات رو در بانک اضافه کنه
میای اول اون مقدار رو جستجو میکنی اگه موجود بود پیغام خطا میدی، ولی اگه نبود ثبتش میکنی.
adodc1.recordsource="select * from table1 where name='" & text1.text & "'"
adodc1.refresh
if adodc1.recordset.recordcount=0 then
' Saving codes
msgbox "record aded"
Else
Msgbox "Record exists"
End if
ممنون اما ارور syntax error in from cluse میده
چی باید کرد؟؟؟
این کد چرا ارور میده؟؟؟؟؟؟
سلام . دوست عزیز کدی که آقا محسن قرار داده هیچ مشکلی نداره . بعضی از جاهاش رو باید به نسبت بانکتون و برنامتون تغییر بدین.
چه خطایی میده ؟
syntax error in from cluse
کدی که براتون گذاشتند کاملا صحیح است شما فیلدی که برای مقدار جست و جو تعریف کردی نوع اون چیه ؟ از نوع رشته یا عدد اگه عدد باشه باید این خط رو این طور بنویسی :
adodc1.recordsource="select * from table1 where name=" & text1.text
در ضمن نام جدول و نام فیلد در این تکه کد مثالی نوشته شده شما باید نام جدول خودتون رو به جای table1 و نام فیلد خودتون رو به جای name قرار داده و جاگذاری کنید . همین
بله فیلدش عددی هست و نوعش در اکسس number است
کد من به این شکل هست
Private Sub Button5_Click()
Adodc1.RecordSource = "select * from moshakhasat_darokhane where number_tasis=" & Text1.Text
Adodc1.Refresh
If Adodc1.Recordset.RecordCount = 0 Then
If (Text1.Text = "") Or (Text2.Text = "") Or (Text3.Text = "") Or (Text4.Text = "") Or (Text5.Text = "") Or (Text6.Text = "") Or (Text7.Text = "") Or (Text8.Text = "") Or (Text9.Text = "") Or (Text10.Text = "") Then
a = MsgBox("áØÝÇ ÇØáÇÚÇÊ ÑÇ ˜Çãá æÇÑÏ ˜äíÏ", vbCritical, "ÇÎØÇÑ")
Else
Adodc1.Recordset.AddNew
a = MsgBox("ÇØáÇÚÇÊ ÏÇÑæÎÇäå ÈÇ ãæÝÞíÊ ËÈÊ ÔÏ", vbInformation, "äÊíÌå ËÈÊ ÇØáÇÚÇÊ")
End If
Else
MsgBox "ãÞÏÇÑ Ê˜ÑÇÑí ÇÓÊ"
End If
End Sub
لطفا دلیل رو بگین
نیاز شدید به راهنمایی
اگه به خط دوم ایراد میگیره، اسم جدول و فیلدت رو عوض کن، یعنی کاراکتر _ رو بردار. مثلا بنویس darokhaneInfo
اکسس به بعضی کاراکتر ها تو نامگذاری حساسه، شاید با _ هم مشکل داشته باشه.
نه به خط سوم یعنی :
adodc1.refresh
گیر میده
اصولا نباید خطای سینتکس بده!
فقط یه راه حل تو ذهنم هست.
یه تکست باکس بزار رو فرم بعد با دیتا ارتباط بده(با datafield , recordsource) بعد مخفیش کن.
گاهی اوقات جواب میده.
یعنی چطوری؟؟؟؟
یک تکست باکس بگذارم بعد با Adodc به بانکم ارتباط بدم
بعدش ارتباط دادم به کدوم فیلدش مرتبط کنم؟؟؟؟؟؟
مهم نیست هر فیلدی خواستی ربط بده.
البته مطمئن نیستم که جواب بده یا نه.
نشد
باز همون ارور همیشگی رو میده و وقتی debugرو میزنم میاد روی adodc1.refresh !!!!!!!!!!!!!!!!
دیگه دارم دیونه میشم
نمیدونم مشکل از کجاست!
از آقا حامد(vbhamed) یا آقای محسن واژدی کمک بگیر.
من ایشون رو از کجا پیدا کنم؟؟
لطفا لینکشون رو بدین
سلام علیکم
احتمالا" خاصیت CommandType بر روی adCmdTable تنظیم شده است، دستور زیر را پیش از Refresh قرار دهید:
Adodc1.CommandType = adCmdText
موفق باشید
.: مداحی دلنشین شهیدی که در زادروز ولادتش پرکشید [ تصاویر... ]
.: مداحی دلنشین شهید غلامعلی رجبی [ تصاویر... ]
.: لطفا سوالاتی که قابل طرح در انجمن هستند را در خصوصی ارسال نفرمائید.