تقييم الموضوع :
  • 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


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  [سؤال] مشكلة الاختلاف بين ترتيب الصفوف في قاعدة البيانات والداتا جريد فيو waelalmsry75 2 107 18-08-17, 05:40 PM
آخر رد: waelalmsry75
  هل يمكن حفظ البيانات من dataGridView مباشرة؟ abozeyd 3 144 15-08-17, 02:11 PM
آخر رد: abozeyd
  ممكن تعديل كود انشاء قاعدة اكسس بالكود سعود 8 243 07-08-17, 11:26 PM
آخر رد: أبو نوره
  طلب كود رسالة تبين أن هذه البيانات موجودة من قبل ولا يسمح بتكررها waelalmsry75 2 142 19-07-17, 03:24 PM
آخر رد: waelalmsry75
  تضمين قاعدة بيانات MySQL مع الرنامج Jounior_P 8 243 19-07-17, 01:58 PM
آخر رد: Jounior_P
Question [سؤال] كيف يتم تشغيل قاعدة بيانات SQL SERVER دون تنصيب MS SQL SERVER alimoi79 1 167 16-07-17, 02:56 AM
آخر رد: ابو ليلى
  [كود] المساعدة في كود بحث برقم التسلسل اذا كان الرقم غير موجود داخل قاعدة بيانات تخرج رسالة وادي العوضي 3 153 14-07-17, 09:43 AM
آخر رد: وادي العوضي
Rainbow [VB.NET] كيف يمكنني الإتصال بملف قاعدة البيانات نوع Paradox sniperjawadino 2 153 12-07-17, 01:20 PM
آخر رد: sniperjawadino
  البحث في قاعدة البيانات مع تجاهل التشكيل waelalmsry75 16 667 03-07-17, 05:04 AM
آخر رد: K39
  [سؤال] كيف احفظ صورة الطالب الى قاعدة البيانات عبداللطيف2017 6 311 25-06-17, 01:47 PM
آخر رد: silverlight

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


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