05-10-13, 12:31 AM
(آخر تعديل لهذه المشاركة : 05-10-13, 12:35 AM {2} بواسطة ahmedshafea.)
السلام عليكم ورحمة الله وبركاته
لدي قاعدة بيانات تتكون من عدة جدوال من المفترض ان يقوم المستخدم في احد فورمات بالاضافة كل البيانات لاحد الجدوال وبعض البيانات لجدول آخر ... ولذا لا استطيع عمل ماستر كي لجدول الاخير ليمنع تكرار البيانات عند اضافة بقية البيانات له عن الطريق الفورم الخاص به
فهل من طريقة اخري تمنع اضافة البيانات مكررة ....(علي مستوي الصف )
الجدول يتكون من خمسة اعمدة ... وقد يحدث أن تتكرر بيانات اربعة أعمدة ... ولكن لا ينبغي أن يتكرر بيانات الخمسة أعمدة ..فهل من طريق تفعل ذلك
لقد حاولت أرفاق المشروع بالكامل ولكن لم اتمكن بسبب حجم المرفقات المسموح به هناصغير جدا
وهذا الكود للفوم الآخير
لدي قاعدة بيانات تتكون من عدة جدوال من المفترض ان يقوم المستخدم في احد فورمات بالاضافة كل البيانات لاحد الجدوال وبعض البيانات لجدول آخر ... ولذا لا استطيع عمل ماستر كي لجدول الاخير ليمنع تكرار البيانات عند اضافة بقية البيانات له عن الطريق الفورم الخاص به
فهل من طريقة اخري تمنع اضافة البيانات مكررة ....(علي مستوي الصف )
الجدول يتكون من خمسة اعمدة ... وقد يحدث أن تتكرر بيانات اربعة أعمدة ... ولكن لا ينبغي أن يتكرر بيانات الخمسة أعمدة ..فهل من طريق تفعل ذلك
لقد حاولت أرفاق المشروع بالكامل ولكن لم اتمكن بسبب حجم المرفقات المسموح به هناصغير جدا
وهذا الكود للفوم الآخير
كود :
Imports System.Data
Imports System.Data.OleDb
Public Class SpecialColor
Public CON As New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;" & "Data Source =" & Application.StartupPath & "\db1.mdb")
Public DS As New DataSet
Dim dt As New DataTable
Public SQLstr As String = "SELECT * FROM SpecialColor WHERE OrderNo LIKE '%" & PrintDetails.TextBox1.Text & "%'"
Sub DataBaseUpdate()
Try
CON.Open()
Dim DataAdapter1 As New OleDbDataAdapter(SQLstr, CON)
DataAdapter1.Fill(DS, "SpecialColor")
CON.Close()
DataAdapter1.Fill(dt)
Me.DataGridView1.DataSource = dt
AddDataContent()
Catch ex As Exception
MsgBox(ex.Message, MsgBoxStyle.MsgBoxRight + MsgBoxStyle.Critical, " خطأ في الإتصال")
End Try
End Sub
Public Sub updatTheDataBase()
Dim DataAdapter1 As New OleDbDataAdapter(SQLstr, CON)
DS.Clear()
DataAdapter1.Fill(DS, "SpecialColor")
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
MyBase.Close()
OrderForm.Show()
PrintDetails.Show()
End Sub
Sub AddDataContent()
On Error Resume Next
TextBox3.DataBindings.Add("Text", DS, "SpecialColor.PrintOn")
TextBox5.DataBindings.Add("Text", DS, "SpecialColor.OrderNo")
TextBox2.DataBindings.Add("Text", DS, "SpecialColor.SpecialColor")
TextBox4.DataBindings.Add("Text", DS, "SpecialColor.Color")
TextBox1.DataBindings.Add("Text", DS, "SpecialColor.Ref")
End Sub
Sub InsertData()
Try
Dim SavInto1 As New OleDb.OleDbCommand
SavInto1.Connection = CON
SavInto1.CommandType = CommandType.Text
SavInto1.CommandText = "Update SpecialColor set Color=@P1,Ref=@P2 where OrderNo=@P3 and PrintOn=@P4 and SpecialColor =@P5"
With SavInto1.Parameters
.AddWithValue("@P1", TextBox4.Text)
.AddWithValue("@P2", TextBox1.Text)
.AddWithValue("@P3", TextBox5.Text)
.AddWithValue("@P4", TextBox3.Text)
.AddWithValue("@P5", TextBox2.Text)
End With
CON.Open()
SavInto1.ExecuteNonQuery()
SavInto1.ExecuteNonQuery()
MsgBox("تمت عملية الاضافة والحفظ في قاعدة البيانات بنجاح", MsgBoxStyle.Information, "تمت العملية بنجاح")
CON.Close()
Catch ex As Exception When SQLstr.Count > 1
MsgBox("This Record allreay updated", MsgBoxStyle.Critical, "Error")
CON.Close()
Catch ex As Exception
MsgBox(Err.Description, MsgBoxStyle.Critical, "Error")
End Try
End Sub
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
InsertData()
If Me.BindingContext(DS, "SpecialColor").Position = Me.BindingContext(DS, "SpecialColor").Count - 1 Then
MyBase.Close()
Else
Me.BindingContext(DS, "SpecialColor").Position += 1
End If
End Sub
Private Sub SpecialColor_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Me.Text = "Print Details Of Order Number " & PrintDetails.TextBox1.Text
TextBox3.ReadOnly = True
TextBox2.ReadOnly = True
TextBox5.ReadOnly = True
DataBaseUpdate()
If Me.BindingContext(DS, "SpecialColor").Count >= 2 Then
Button3.Enabled = True
Button4.Enabled = True
Else
Button3.Enabled = False
Button4.Enabled = False
End If
End Sub
Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click
Me.BindingContext(DS, "SpecialColor").Position -= 1
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
InsertData()
MyBase.Close()
End Sub
Private Sub TextBox2_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox2.TextChanged
End Sub
Private Sub DataGridView1_CellContentClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles DataGridView1.CellContentClick
End Sub
End Class