تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[كود] كود منع التكرار في قاعدة البيانات
#1
Wink 
السلام عليكم ورحمة الله وبركاته


حابه استفسر عن كود منع التكرار في قاعدة البيانات

بحيث ان استخدم فيجوال ستيديو

وعندي قاعدة بيانات من نوع اكسس

اسم القاعدة students

والجدول s1

وعندي حقل من حقول الجدول اسمة id_number


حابه اذا شغلت برنامج وادخل قيمة في text box

و تكرر الرقم مايحفظها

بحيث تظهر لي message box

ان الرقم مكرر في قاعدة البياناتHeart
الرد }}}}
تم الشكر بواسطة:
#2
مثال بسيط
مربع نص textbox1
زر امر button1
شبيكة بيانات datagridview باسم dgv1

وهذا الكلاس
كود :
Imports System.Data.OleDb

Public Class Form1
    Dim str As String = "provider=microsoft.ace.oledb.12.0;data source=|datadirectory|\students.accdb"
    Dim con As New OleDbConnection(str)
    Dim ds As New DataSet
    Private Sub dgds(ByVal d As DataSet)
        If dgv1.InvokeRequired Then
            dgv1.Invoke(New Action(Of DataSet)(AddressOf dgds), d)
        Else
            dgv1.DataSource = d

        End If
    End Sub
    Private Sub dgv(ByVal d As String)
        If dgv1.InvokeRequired Then
            dgv1.Invoke(New Action(Of String)(AddressOf dgv), d)
        Else
            dgv1.DataMember = d

        End If
    End Sub

    Private Sub gd()
        dgds(Nothing)
        dgv(Nothing)
        ds.Clear()
        Dim da As New OleDbDataAdapter("select id_number from s1", con)
        da.Fill(ds, "s1")
        dgds(ds)
        dgv("s1")

    End Sub
    Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
        begin()
    End Sub

    Private Sub begin()
        Dim ath As New Threading.Thread(AddressOf gd)
        If ath.IsAlive = False Then
            ath.Start()
        End If
    End Sub

    Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
        If isfound(TextBox1.Text) Then
            MsgBox("الرقم محجوز", MsgBoxStyle.Critical, "")
            Exit Sub
        End If

        If addnew(TextBox1.Text) Then
            MsgBox("تم الحفظ", MsgBoxStyle.Information, "")
        Else
            MsgBox("لم يتم الحفظ لوجود خطا", MsgBoxStyle.Critical, "")

        End If


    End Sub


    Private Function isfound(ByVal txt As String) As Boolean
        Dim cm As New OleDbCommand("select count(tid) from s1 where id_number=@id_number", con)

        cm.Parameters.AddWithValue("@id_number", txt)
        If con.State = ConnectionState.Closed Then
            con.Open()
        End If
        If cm.ExecuteScalar > 0 Then
            Return True
        Else
            Return False
        End If

    End Function


    Private Function addnew(ByVal txt As String) As Boolean
        

        Dim cm As New OleDbCommand("insert into s1(id_number) values(@id_number)", con)
        cm.Parameters.AddWithValue("@id_number", txt)
        If con.State = ConnectionState.Closed Then
            con.Open()
        End If
        Try
            cm.ExecuteNonQuery()
            begin()
            Return True
        Catch ex As Exception
            Return False
        End Try

    End Function





End Class
أستودعكم الله الذي لا تضيع ودائعه أرجو ان تجدوا بمشاركاتي ما يجعلكم تدعون لي بخير ان تحتم غيابي.
الرد }}}}
تم الشكر بواسطة:
#3
(07-05-14, 04:48 PM)سعود كتب : مثال بسيط
مربع نص textbox1
زر امر button1
شبيكة بيانات datagridview باسم dgv1

وهذا الكلاس
كود :
Imports System.Data.OleDb

Public Class Form1
    Dim str As String = "provider=microsoft.ace.oledb.12.0;data source=|datadirectory|\students.accdb"
    Dim con As New OleDbConnection(str)
    Dim ds As New DataSet
    Private Sub dgds(ByVal d As DataSet)
        If dgv1.InvokeRequired Then
            dgv1.Invoke(New Action(Of DataSet)(AddressOf dgds), d)
        Else
            dgv1.DataSource = d

        End If
    End Sub
    Private Sub dgv(ByVal d As String)
        If dgv1.InvokeRequired Then
            dgv1.Invoke(New Action(Of String)(AddressOf dgv), d)
        Else
            dgv1.DataMember = d

        End If
    End Sub

    Private Sub gd()
        dgds(Nothing)
        dgv(Nothing)
        ds.Clear()
        Dim da As New OleDbDataAdapter("select id_number from s1", con)
        da.Fill(ds, "s1")
        dgds(ds)
        dgv("s1")

    End Sub
    Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
        begin()
    End Sub

    Private Sub begin()
        Dim ath As New Threading.Thread(AddressOf gd)
        If ath.IsAlive = False Then
            ath.Start()
        End If
    End Sub

    Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
        If isfound(TextBox1.Text) Then
            MsgBox("الرقم محجوز", MsgBoxStyle.Critical, "")
            Exit Sub
        End If

        If addnew(TextBox1.Text) Then
            MsgBox("تم الحفظ", MsgBoxStyle.Information, "")
        Else
            MsgBox("لم يتم الحفظ لوجود خطا", MsgBoxStyle.Critical, "")

        End If


    End Sub


    Private Function isfound(ByVal txt As String) As Boolean
        Dim cm As New OleDbCommand("select count(tid) from s1 where id_number=@id_number", con)

        cm.Parameters.AddWithValue("@id_number", txt)
        If con.State = ConnectionState.Closed Then
            con.Open()
        End If
        If cm.ExecuteScalar > 0 Then
            Return True
        Else
            Return False
        End If

    End Function


    Private Function addnew(ByVal txt As String) As Boolean
        

        Dim cm As New OleDbCommand("insert into s1(id_number) values(@id_number)", con)
        cm.Parameters.AddWithValue("@id_number", txt)
        If con.State = ConnectionState.Closed Then
            con.Open()
        End If
        Try
            cm.ExecuteNonQuery()
            begin()
            Return True
        Catch ex As Exception
            Return False
        End Try

    End Function





End Class








ماضبط معي ممكن ارسل لك المشروع تعدل لي عليه ؟؟؟
الرد }}}}
تم الشكر بواسطة:
#4
إقتباس :ممكن ارسل لك المشروع تعدل لي عليه ؟؟؟
لاترسل المشروع لكن سو مثال بسيط وارسله.
أستودعكم الله الذي لا تضيع ودائعه أرجو ان تجدوا بمشاركاتي ما يجعلكم تدعون لي بخير ان تحتم غيابي.
الرد }}}}
تم الشكر بواسطة:
#5
ابي اذا دخلت

سجل مدني موجود في قاعدة البيانات

وضغطت تسجيل

مايسجل تظهر لي bessage box



http://im90.gulfup.com/Inl07l.png
الرد }}}}
تم الشكر بواسطة:
#6
هذا اللي نتحدث عنه وموجود بالكود اللي كتبت لك
أستودعكم الله الذي لا تضيع ودائعه أرجو ان تجدوا بمشاركاتي ما يجعلكم تدعون لي بخير ان تحتم غيابي.
الرد }}}}
تم الشكر بواسطة:
#7
طيب اذا كان التكرار موجود text box 2

اللي هو السجل ايش نعدل في الكود ؟؟؟


و هل ينحفظ في قاعدة البيانات ؟؟
الرد }}}}
تم الشكر بواسطة:
#8
الدالة فائدتها انك ترسل لها اي قيمة زي كذا
كود :
If isfound(TextBox1.Text) Then
            MsgBox("محجوز", MsgBoxStyle.Critical, "")
            Exit Sub
        End If


If isfound(TextBox2.Text) Then
            MsgBox("محجوز", MsgBoxStyle.Critical, "")
            Exit Sub
        End If

If isfound(TextBox3.Text) Then
            MsgBox("محجوز", MsgBoxStyle.Critical, "")
            Exit Sub
        End If

وهكذا
أستودعكم الله الذي لا تضيع ودائعه أرجو ان تجدوا بمشاركاتي ما يجعلكم تدعون لي بخير ان تحتم غيابي.
الرد }}}}
تم الشكر بواسطة:
#9
مشششششششششششكوووووووووووووووووور


ماقصرت Heart
الرد }}}}
تم الشكر بواسطة:
#10
العفو
واي سؤال اسال
أستودعكم الله الذي لا تضيع ودائعه أرجو ان تجدوا بمشاركاتي ما يجعلكم تدعون لي بخير ان تحتم غيابي.
الرد }}}}
تم الشكر بواسطة:


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  مشكلة في تصميم قاعدة البيانات djelloul 0 12 أمس, 03:57 PM
آخر رد: djelloul
  بحث و إظهار صورة من قاعة البيانات علىPictureBox ahmed_elwerfalli 0 38 29-11-16, 01:34 AM
آخر رد: ahmed_elwerfalli
  [سؤال] كيفية اضافة عناصر عمود فى جدول من قاعدة بيانات فى جدول اخر hidn 1 166 04-11-16, 09:25 AM
آخر رد: thevirus
  [VB.NET] مثال على جلب ارقام من قاعدة البيانات وحفظها في مصفوفة بدر إشتية 4 349 02-11-16, 02:42 AM
آخر رد: Ahmad ahmed
  [سؤال] قراءة رابط من قاعدة بيانات في ادة التصفح شمس الدين 03 2 77 27-10-16, 10:43 PM
آخر رد: شمس الدين 03
  مساعدة في بناء قاعدة hglogtd 4 129 05-10-16, 03:48 PM
آخر رد: hglogtd
  استفسار حول طريقتي في قاعدة البيانات صبري زينوبي 0 76 29-09-16, 04:35 PM
آخر رد: صبري زينوبي
  ربط قاعدة بيانات اكسس بفجوال دوت نت 2015 كنونو 0 123 26-09-16, 01:35 PM
آخر رد: كنونو
  تسمية قاعدة البيانات قبل انشائها aiman 3 167 15-09-16, 09:12 PM
آخر رد: Abu Ehab
  [Acces2003] المساعدة في كود لحذف البيانات من الاستعلام محمد خلف زكي 2 139 28-08-16, 11:24 AM
آخر رد: محمد خلف زكي

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


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