تقييم الموضوع :
  • 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
اللهم إني أعوذ بك من غلبة الدين وغلبة العدو، اللهم إني أعوذ بك من جهد البلاء ومن درك الشقاء ومن سوء القضاء ومن شماتة الأعداء
اللهم اغفر لي خطيئتي وجهلي، وإسرافي في أمري وما أنت أعلم به مني، اللهم اغفر لي ما قدمت وما أخرت، وما أسررت وما أعلنت وما أنت أعلم به مني، أنت المقدم وأنت المؤخر وأنت على كل شيء قدير
الرد }}}
تم الشكر بواسطة: waelalmsry75
#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

وهكذا
اللهم إني أعوذ بك من غلبة الدين وغلبة العدو، اللهم إني أعوذ بك من جهد البلاء ومن درك الشقاء ومن سوء القضاء ومن شماتة الأعداء
اللهم اغفر لي خطيئتي وجهلي، وإسرافي في أمري وما أنت أعلم به مني، اللهم اغفر لي ما قدمت وما أخرت، وما أسررت وما أعلنت وما أنت أعلم به مني، أنت المقدم وأنت المؤخر وأنت على كل شيء قدير
الرد }}}
تم الشكر بواسطة: waelalmsry75
#9
مشششششششششششكوووووووووووووووووور


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


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
Heart استرجاع قاعدة بيانات محمد بن عطية 1 1,069 18-07-25, 04:30 AM
آخر رد: abuabdulrhman
  استفسارات عن قواعد البيانات مبتدئ بوحمد 0 1,008 06-11-24, 10:15 AM
آخر رد: بوحمد
  [C#.NET] مشكلة في مجلد قاعدة البيانات kamel1978 3 685 06-10-24, 06:26 PM
آخر رد: Taha Okla
  ما هو كود معرفة نوع البيانات من اكسس؟ justforit 6 1,046 23-05-24, 08:22 AM
آخر رد: مصمم هاوي
  [سؤال] حول مشكلة توافق نوع البيانات عند الاستعلام في اكسل justforit 4 695 23-05-24, 05:35 AM
آخر رد: justforit
  [سؤال] عدم إظهار الصور مع النص فى Listview من قاعدة البيانات alims 2 2,033 27-08-23, 12:22 PM
آخر رد: رضوان الجماعي
  [نقاش] مشاركة قاعدة بيانات SQL على شبكه داخليه morkoskhalaf 3 3,575 06-01-23, 03:20 AM
آخر رد: عبدالكريم برشدان
  قاعدة بيانات xml djelloul 3 3,166 07-11-22, 10:27 PM
آخر رد: Am7
  استفسار عن تخزين الوقت في قاعدة البيانات strongriseman 2 1,568 22-04-22, 07:27 PM
آخر رد: strongriseman
  [سؤال] مشكلة فى عرض الصورة من ادخل قاعدة البيانات alims 2 1,706 17-11-21, 10:09 AM
آخر رد: سعود

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


يقوم بقرائة الموضوع: