تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
منع تكرار البيانات المدخلة على قاعدة البيانات
#1
خلال بحثي عن معلومات او عن كيفية جعل البيانات لاتتكرر في قواعد البيانات 
لم أجد اي كود بسيط , 
من فضلكم أود نموذج لمشروع او طريقة عدم تكرار البيانات المدخلة في قاعدة البيانات
Angel  الحياة فترة اختبار , إما أن تكون او لاتكون  Rolleyes  
لن امل من البحث  ولن امل من السؤال
[b]رواد المعلوميات[/b]
الرد }}}
تم الشكر بواسطة: ابراهيم ايبو
#2
PHP كود :
Private Function ID_Exists(ByVal num As Integer) As Boolean
    If Conn
.State ConnectionState.Closed Then
        Conn
.Open()
 
   End If

 
   Dim cmd As SqlCommand = New SqlCommand("Select count(*) from Unit where ID= @ID"Conn)
 
   cmd.Parameters.AddWithValue("@ID"num)
 
   Dim result cmd.ExecuteScalar()
 
   Conn.Close()
 
   Return Convert.ToBoolean(result)
End Function 

PHP كود :
If ID_Exists(ID.Text.text) = True Then
 the ID already in database
Else
the ID not in database
End 
If 
 يمكنك ان تقوم بفحص اي عمود تشاء كل ما عليك هو تغير العمود where ID= @ID

الرد }}}
#3
شكرا لك اخي الكريم بالنسبة للكود الذي ارسلته هو عبارة عن كودين الاول سيكون في امر تنفيذ الحفظ والثاني اين
Angel  الحياة فترة اختبار , إما أن تكون او لاتكون  Rolleyes  
لن امل من البحث  ولن امل من السؤال
[b]رواد المعلوميات[/b]
الرد }}}
تم الشكر بواسطة: ابراهيم ايبو , asemshahen5
#4
السلام عليكم
اخي الكود الاول عبارة فنكشن يوضع لحاله اما الكود الثاني فيوضع في زر الحفظ
وهو سيعود عليك بقيمة true ان كان السجل الذي ستحفظه موجود سابقا وبالتالي ضع امر الخروج من الصب
 وان كان غير موجود يتابع الحفظ
والكود الثاني هكذا في زر الحفظ
كود :
If ID_Exists(ID.Text) = True Then
           MsgBox("هذا السجل موجود سابقا")
           Exit Sub
       Else
           ' هنا امر الحفظ
       End If

اعمل الخير وأجرك لا تنتظره فالله خير من إليك يرده
البرمجة ليست مجرد كود بل هي منهج تفكير منطقي لحل المشكلات







الرد }}}
#5
(26-08-19, 04:06 AM)ابراهيم ايبو كتب :
السلام عليكم
اخي الكود الاول عبارة فنكشن يوضع لحاله اما الكود الثاني فيوضع في زر الحفظ
وهو سيعود عليك بقيمة true ان كان السجل الذي ستحفظه موجود سابقا وبالتالي ضع امر الخروج من الصب
 وان كان غير موجود يتابع الحفظ
والكود الثاني هكذا في زر الحفظ
كود :
If ID_Exists(ID.Text) = True Then
           MsgBox("هذا السجل موجود سابقا")
           Exit Sub
       Else
           ' هنا امر الحفظ
       End If
ولكن حين وضعي للكود اعلاه اجد به اخطاء 
 مثلا في 
كود :
Private Function ID_Exists(ByVal num As Integer) As Boolean
   If Conn.State = ConnectionState.Closed Then
       Conn.Open()
   End If

   Dim cmd As SqlCommand = New SqlCommand("Select count(*) from Unit where ID= @ID", Conn)
   cmd.Parameters.AddWithValue("@ID", num)
   Dim result = cmd.ExecuteScalar()
   Conn.Close()
   Return Convert.ToBoolean(result)
End Function

أجد السطر     Dim cmd As SqlCommand = New SqlCommand("Select count(*) from Unit where ID= @ID", Conn)
به مشكلة في المتغير conn حيث انني أستخدم في الاستدعاء  System.Data.OleDb
وحيث وضعت هذا الكود اضطررت الى اضافة الاستدعاء Imports System.Data.SqlClient

المشكلة ان المتغير conn لايقبل الاستدعاء المزدوج اتمنى ان تصلكن فكرة المشكلة
Angel  الحياة فترة اختبار , إما أن تكون او لاتكون  Rolleyes  
لن امل من البحث  ولن امل من السؤال
[b]رواد المعلوميات[/b]
الرد }}}
تم الشكر بواسطة: ابراهيم ايبو , asemshahen5
#6
السلام عليكم اخي الرائد
لاحظ انك لم تقم بتغيير (*) الى اسم العمود الذي ستفحصه وعادة ستفحص عمود الاسم او كود منتج
وكذلك ذقق في اسم الجدول
اعمل الخير وأجرك لا تنتظره فالله خير من إليك يرده
البرمجة ليست مجرد كود بل هي منهج تفكير منطقي لحل المشكلات







الرد }}}
تم الشكر بواسطة: الرائد , asemshahen5
#7
If con.State = ConnectionState.Closed Then
con.Open()
End If

Dim cmd As SqlCommand = New SqlCommand("Select count(رقم_ب_ت_و) from Table1 where ID= @ID", con)
cmd.Parameters.AddWithValue("@ID", num)
Dim result = cmd.ExecuteScalar()
con.Close()
Return Convert.ToBoolean(result)
End Function

لازلت اعاني من نفس المشكلة
Angel  الحياة فترة اختبار , إما أن تكون او لاتكون  Rolleyes  
لن امل من البحث  ولن امل من السؤال
[b]رواد المعلوميات[/b]
الرد }}}
تم الشكر بواسطة: asemshahen5 , asemshahen5
#8
(31-08-19, 10:12 PM)الرائد كتب : If con.State = ConnectionState.Closed Then
           con.Open()
       End If

       Dim cmd As SqlCommand = New SqlCommand("Select count(رقم_ب_ت_و) from Table1 where ID= @ID", con)
       cmd.Parameters.AddWithValue("@ID", num)
       Dim result = cmd.ExecuteScalar()
       con.Close()
       Return Convert.ToBoolean(result)
   End Function

لازلت اعاني من نفس المشكل
دعني اشرح لك :
هذا الكود يجب ان تضعة في الكلاس خارج اي event يعني خارج البوتون او اي شي اخر
PHP كود :
Private Function ID_Exists(ByVal num As Integer) As Boolean
   
If Conn.State ConnectionState.Closed Then
       Conn
.Open()
 
  End If

 
  Dim cmd As SqlCommand = New SqlCommand("Select count(*) from Unit where ID= @ID"Conn)
 
  cmd.Parameters.AddWithValue("@ID"num)
 
  Dim result cmd.ExecuteScalar()
 
  Conn.Close()
 
  Return Convert.ToBoolean(result)
End Function 

الذي تحتاج تغيرة هنا هو :
١- ID= @ID ---- يعني لو انت تريد مثلا رقم هاتف ان لا يتكرر تغير ال ID بالعمود الخاص برقم الهاتف phone=@phone ... 
2 - conn ----- الخاص بجملة الاتصال بقاعدة البيانات ممكن يكون لديك تكون con - connection انتبة.
٣- Unit ------ اسم الجدول.

الكود التي تضعه او تطلبة في الحدث عندما تريد ان تتاكد اذا كان السجل المراد ادخالة موجود او لا 
يعني في زر الحفظ او المكان الذي تحتاجة :


PHP كود :
If ID_Exists(ID.Text) = True Then
           MsgBox
("هذا السجل موجود سابقا")
 
          Exit Sub
       
Else
 
          ' هنا امر الحفظ
       End If 


ID.Text تقوم بتغيره بالنص الذي تريد التاكد من اذا كان مسحل قبل ام لا

في النهاية اذا تريد ارسل لي المشروع او قم بعمل مشروع صغير لاعدل لك علية

الرد }}}
تم الشكر بواسطة: الرائد , asemshahen5
#9
(01-09-19, 01:00 AM)Rabeea Qbaha كتب :
(31-08-19, 10:12 PM)الرائد كتب : If con.State = ConnectionState.Closed Then
           con.Open()
       End If

       Dim cmd As SqlCommand = New SqlCommand("Select count(رقم_ب_ت_و) from Table1 where ID= @ID", con)
       cmd.Parameters.AddWithValue("@ID", num)
       Dim result = cmd.ExecuteScalar()
       con.Close()
       Return Convert.ToBoolean(result)
   End Function

لازلت اعاني من نفس المشكل
دعني اشرح لك :
هذا الكود يجب ان تضعة في الكلاس خارج اي event يعني خارج البوتون او اي شي اخر
PHP كود :
Private Function ID_Exists(ByVal num As Integer) As Boolean
   
If Conn.State ConnectionState.Closed Then
       Conn
.Open()
 
  End If

 
  Dim cmd As SqlCommand = New SqlCommand("Select count(*) from Unit where ID= @ID"Conn)
 
  cmd.Parameters.AddWithValue("@ID"num)
 
  Dim result cmd.ExecuteScalar()
 
  Conn.Close()
 
  Return Convert.ToBoolean(result)
End Function 

الذي تحتاج تغيرة هنا هو :
١- ID= @ID ---- يعني لو انت تريد مثلا رقم هاتف ان لا يتكرر تغير ال ID بالعمود الخاص برقم الهاتف phone=@phone ... 
2 - conn ----- الخاص بجملة الاتصال بقاعدة البيانات ممكن يكون لديك تكون con - connection انتبة.
٣- Unit ------ اسم الجدول.

الكود التي تضعه او تطلبة في الحدث عندما تريد ان تتاكد اذا كان السجل المراد ادخالة موجود او لا 
يعني في زر الحفظ او المكان الذي تحتاجة :


PHP كود :
If ID_Exists(ID.Text) = True Then
           MsgBox
("هذا السجل موجود سابقا")
 
          Exit Sub
       
Else
 
          ' هنا امر الحفظ
       End If 


ID.Text تقوم بتغيره بالنص الذي تريد التاكد من اذا كان مسحل قبل ام لا

في النهاية اذا تريد ارسل لي المشروع او قم بعمل مشروع صغير لاعدل لك علية


الملفات المرفقة
.rar   الحفظ.rar (الحجم : 183.92 ك ب / التحميلات : 96)
Angel  الحياة فترة اختبار , إما أن تكون او لاتكون  Rolleyes  
لن امل من البحث  ولن امل من السؤال
[b]رواد المعلوميات[/b]
الرد }}}
تم الشكر بواسطة:
#10
تفضل اخي .... الان يقوم بالتاكد من الرقم القومي اذا كان مدخل من قبل ام لا .


الملفات المرفقة
.rar   الحفظ.rar (الحجم : 314.16 ك ب / التحميلات : 225)

الرد }}}
تم الشكر بواسطة: الرائد


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  هل من الممكن العمل على قاعدة بيانات اكسل على الفيجوال بيسك خالد كامل1 4 83 24-03-24, 02:00 AM
آخر رد: خالد كامل1
  [VB.NET] حل مشكلة الاتصال بقواعد البيانات access loay775 2 158 25-02-24, 06:29 AM
آخر رد: loay775
  انشاء قاعدة بيانات من ملف سكربت strongriseman 5 500 17-02-24, 02:57 PM
آخر رد: strongriseman
  سؤال عن عملية حذف سجل من قاعدة البيانات assuhimi 3 249 11-02-24, 08:43 PM
آخر رد: assuhimi
  معرفة عدد مرات تكرار الاسم في الداتاقريدفيو صالح عبدالله 8 426 05-02-24, 04:39 PM
آخر رد: صالح عبدالله
  فلترة datagridview بدون قاعدة بيانات صالح عبدالله 3 295 02-02-24, 04:07 PM
آخر رد: صالح عبدالله
  [VB.NET] منع تكرار البيانات في عند الادخال مبرمج صغير 1 2 255 24-01-24, 05:18 PM
آخر رد: مبرمج صغير 1
Photo [كود] مطلوب كود يستخدم الأوامر فقط لتحديث قاعدة بيانات بـ vb.net AhmedEissa 4 638 18-01-24, 11:40 PM
آخر رد: العتيق
  [VB.NET] مساعدة في استدعاء البيانات معينه من form الأول إلى form 2 بدون التعديل loay775 2 275 18-01-24, 05:04 PM
آخر رد: loay775
  [VB.NET] إعادة استدعاء البيانات من قاعدة بيانات اكسس والاهم الصورة مبرمج صغير 1 1 273 13-01-24, 01:17 PM
آخر رد: مبرمج صغير 1

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم