ورود

View Full Version : سوال: جلوگیری از ذخیره اطلاعات تکراری در Access db



irantkd
پنج شنبه 11 مهر 1387, 06:58 صبح
دوستان سلام

من یه فرم عضویت دارم که Profile کاربران ، بهمراه نام کاربری و کلمه عبور رو دریافت و توی دیتابیس ذخیره میکنه و همچنین از ورود نام کاربری تکراری جلوگیری میکنه .
حالا میخوم اگه نام کاربری تکرای بود به کاربر پیغام خطا بده و تا زمانی که Username تکراری باشه اطلاعات توی دیتا بیس ذخیره نشه .
لطفاً بگید چه کدهایی باید به برنامه زیر اضافه کنم ؟


Dim Conn As String = ("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=|DataDirectory|/Web_db.mdb;Persist Security Info=True")
Dim Cmd As New OleDbCommand("INSERT INTO Users (FLname, Email, Uid, pwd, InDate, ActiveUser, CreditAcount, Post, Answer)VALUES('" & Label3.Text & "','" & txtAnswer.Value & "','" & Text4.Value & "','" & lblPass.Text & "','" & Label5.Text & "','" & Label4.Text & "','" & Label4.Text & "','" & Label8.Text & "','" & txtAnswer.Value & "' WHERE uid <> '" & Text4.Value & "')", New OleDbConnection(Conn))
Cmd.Connection.Open()
Cmd.ExecuteNonQuery()
Cmd.Connection.Close()


ممنون

milade
پنج شنبه 11 مهر 1387, 07:26 صبح
دوست عزیز سلام
شما اول چک کنید (با select)ببینید یوزر هست یا نه اگه بود اپدیت کنید اگه نبود اینزرت
موفق و پیروز باشی

irantkd
پنج شنبه 11 مهر 1387, 07:50 صبح
چجوری ؟

میشه بیشتر توضیح بدید !؟

irantkd
پنج شنبه 11 مهر 1387, 07:52 صبح
چجوری ؟
.

milade
پنج شنبه 11 مهر 1387, 08:18 صبح
سلام دوست عزیز
ببینید دوست گرامی شما اول با یه select جستجو می کنید ایا کاربر هست یا نه:

select uid from users where uid='milade'
با این کد شما می بینید که کاربر هست یا نه نتیجه رو بریز توی یه دیتاریدر یا دیتاست اگه تعداد 0 داد که نیست پس insert کن اگه نه مقدار 1 داد پس دستور update رو به کار ببر
موفق و پیروز باشی