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


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  [سؤال] كيفية حفظ ملف pdf في قاعدة بيانات sql abid 5 4,587 10-05-17, 03:13 PM
آخر رد: safalo
  ظهور خطا عند سحب البيانات وعرضها في الداتا كريد باستخدم الـــ Threading HATEM KAREM 0 83 06-05-17, 04:45 PM
آخر رد: HATEM KAREM
  المساعدة في عمل استعلام قاعدة بيانات sqlserver djelloul 0 68 17-04-17, 07:13 PM
آخر رد: djelloul
  [VB.NET] مشكله عند الحفظ على قاعدة بيانات باستخدام Data Source وقاعدة بيانات اكسس2007 coderarab 8 848 03-04-17, 02:48 AM
آخر رد: ابو إياد
  استفسار حول عدم تكرار البيانات المتألق9 3 148 02-04-17, 03:38 AM
آخر رد: حريف برمجة
  جلب البيانات من ملف txt djelloul 7 181 28-03-17, 03:20 PM
آخر رد: djelloul
  [سؤال] طلب صيغة عامة أو وظيفة لأضافة بيانات لقاعدة البيانات ؟ عبد الله 2 150 10-03-17, 09:36 AM
آخر رد: عبد الله
  سرعة ادخال البيانات داخل ملف اكسس atefkhalf2004 1 163 05-03-17, 04:06 AM
آخر رد: thevirus
  استعادة قاعدة البيانات من ملف النسخة الإحتياطية djelloul 2 166 28-02-17, 03:27 PM
آخر رد: djelloul
  نسخ جدول من قاعدة الي اخري مع الوصف atefkhalf2004 2 151 18-02-17, 01:34 AM
آخر رد: atefkhalf2004

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


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