هذه المشكله تظهر مع ان قاعده البيانات لاتحتوي علي EMPLOYEES1
الكود يعمل عند اضافه اول شخص عند اضافه شخص اخر تظهر هذه المشكله
كود :
Public Sub Load_Employees()
dt_Employees.Clear()
Dim cmd As New SqlCommand("select Amp_id,Amp_name,Amp_phone,Amp_state from Employees", connSQLServer)
connSQLServer.Open()
dt_Employees.Load(cmd.ExecuteReader)
connSQLServer.Close()
cmd = Nothing
End Sub
Public Function Max_emp_id_From_Employee()
Dim number As Integer
Try
Dim cmd As New SqlCommand("Select Max (Amp_id) Employees", connSQLServer)
connSQLServer.Open()
number = cmd.ExecuteScalar
connSQLServer.Close()
Catch
number = 0
connSQLServer.Close()
End Try
Return number
End Function
Public Sub Insert_Employees(ByVal Amp_name As String, ByVal Amp_phone As String, ByVal Amp_state As Boolean)
Dim cmd As New SqlCommand("Insert Into Employees(Amp_id,Amp_name,Amp_phone,Amp_state) values (@Amp_id,@Amp_name,@Amp_phone,@Amp_state)", connSQLServer)
Imports System.Data.SqlClient
Public Class Form1
Public dt As DataTable
Public Sub Load_Employees()
dt.Clear()
Dim cmd As New SqlClient.SqlCommand("select Amp_id,Amp_name,Amp_phone,Amp_state from Employees", Conne)
Conne.Open()
dt.Load(cmd.ExecuteReader)
cmd = Nothing
End Sub
Public Function Maximum_Record_In_Table(Field_Name, Table_Name) As Integer
Dim InfoTable As New DataTable
Dim InfoAdapter As New SqlDataAdapter
InfoTable.Clear()
InfoAdapter = New SqlDataAdapter("SELECT MAX(" & Field_Name & ") From " & Table_Name & "", Conne)
InfoAdapter.Fill(InfoTable)
Dim Auto_Number As Integer
If IsDBNull(InfoTable(0)(0)) = True Then
Auto_Number = 1
Else
Auto_Number = InfoTable(0)(0) + 1
End If
Return Auto_Number
End Function
Public Sub Insert_Employees(ByVal Amp_id As Int32, ByVal Amp_name As String, ByVal Amp_phone As String, ByVal Amp_state As Boolean)
Dim cmd As New SqlCommand("Insert Into Employees(Amp_id,Amp_name,Amp_phone,Amp_state) values (@Amp_id,@Amp_name,@Amp_phone,@Amp_state)", Conne)
cmd.Parameters.Add("Amp_id", SqlDbType.Int).Value = Amp_id
cmd.Parameters.Add("Amp_name", SqlDbType.NVarChar).Value = Amp_name
cmd.Parameters.Add("Amp_phone", SqlDbType.NVarChar).Value = Amp_phone
cmd.Parameters.Add("Amp_state", SqlDbType.Bit).Value = Amp_state
cmd.ExecuteNonQuery()
cmd = Nothing
MsgBox("تم الحفظ بنجاح")
End Sub
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Me.TextBox1.Text = Maximum_Record_In_Table("Amp_id", "Employees")
End Sub
Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
Insert_Employees(TextBox1.Text, TextBox2.Text, TextBox3.Text, CheckBox1.CheckState)
End Sub
End Class
Imports System.Data.SqlClient
Public Class Form1
Public dt As DataTable
Public Sub Load_Employees()
dt.Clear()
Dim cmd As New SqlClient.SqlCommand("select Amp_id,Amp_name,Amp_phone,Amp_state from Employees", Conne)
Conne.Open()
dt.Load(cmd.ExecuteReader)
cmd = Nothing
End Sub
Public Function Maximum_Record_In_Table(Field_Name, Table_Name) As Integer
Dim InfoTable As New DataTable
Dim InfoAdapter As New SqlDataAdapter
InfoTable.Clear()
InfoAdapter = New SqlDataAdapter("SELECT MAX(" & Field_Name & ") From " & Table_Name & "", Conne)
InfoAdapter.Fill(InfoTable)
Dim Auto_Number As Integer
If IsDBNull(InfoTable(0)(0)) = True Then
Auto_Number = 1
Else
Auto_Number = InfoTable(0)(0) + 1
End If
Return Auto_Number
End Function
Public Sub Insert_Employees(ByVal Amp_id As Int32, ByVal Amp_name As String, ByVal Amp_phone As String, ByVal Amp_state As Boolean)
Dim cmd As New SqlCommand("Insert Into Employees(Amp_id,Amp_name,Amp_phone,Amp_state) values (@Amp_id,@Amp_name,@Amp_phone,@Amp_state)", Conne)
cmd.Parameters.Add("Amp_id", SqlDbType.Int).Value = Amp_id
cmd.Parameters.Add("Amp_name", SqlDbType.NVarChar).Value = Amp_name
cmd.Parameters.Add("Amp_phone", SqlDbType.NVarChar).Value = Amp_phone
cmd.Parameters.Add("Amp_state", SqlDbType.Bit).Value = Amp_state
cmd.ExecuteNonQuery()
cmd = Nothing
MsgBox("تم الحفظ بنجاح")
End Sub
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Me.TextBox1.Text = Maximum_Record_In_Table("Amp_id", "Employees")
End Sub
Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
Insert_Employees(TextBox1.Text, TextBox2.Text, TextBox3.Text, CheckBox1.CheckState)
End Sub
End Class
30-03-20, 11:54 PM (آخر تعديل لهذه المشاركة : 30-03-20, 11:58 PM {2} بواسطة mohamedalqadi.)
(30-03-20, 11:48 PM)عبد العزيز البسكري كتب :
أرجو المعذرة أنّي قدّمت المساعدة حسب مفهومي الخاص
سأعتبر ما طرحته أعلاه .. آخر مشاركة لي أقدّمها لشخص ثانٍ
أن أفكّر و أتكهّن و أخمّن إلكترونيا عبر الأنترنت و أنجر قاعدة بيانات و جدول للتجربة
بدون أدنى لباقة و كلمة شكر
يأتي من يقول أنّه يريد فعل شيئا آخرا .. و هذا الشيء الآخر لم يطرحه كتسهيل للمساعدة ..
هذه قمّة .. الكورورنا
سأحتفظ بمساعداتي لنفسي .. و السلام عليكم
تحياتي
والله انا لااقصد شيئ فقط اريد ان يتوافق مع كودي ومعذرة اخي
(30-03-20, 11:54 PM)mohamedalqadi كتب :
(30-03-20, 11:48 PM)عبد العزيز البسكري كتب :
أرجو المعذرة أنّي قدّمت المساعدة حسب مفهومي الخاص
سأعتبر ما طرحته أعلاه .. آخر مشاركة لي أقدّمها لشخص ثانٍ
أن أفكّر و أتكهّن و أخمّن إلكترونيا عبر الأنترنت و أنجر قاعدة بيانات و جدول للتجربة
بدون أدنى لباقة و كلمة شكر
يأتي من يقول أنّه يريد فعل شيئا آخرا .. و هذا الشيء الآخر لم يطرحه كتسهيل للمساعدة ..
هذه قمّة .. الكورورنا
سأحتفظ بمساعداتي لنفسي .. و السلام عليكم
تحياتي
والله انا لااقصد شيئ فقط اريد ان يتوافق مع كودي ومعذرة اخي
انا اريد فقط اضافه الموظف هذا كود الموديل كامل
كود :
Imports System.Data.SqlClient
Module Emp_Module
Public dt_Employees As New DataTable
Public add_edit As String
Public emp_id As Integer
Public Sub Load_Employees()
dt_Employees.Clear()
Dim cmd As New SqlCommand("select emp_id,emp_name,emp_phone,emp_state from Employees where emp_state = 1", connSQLServer)
connSQLServer.Open()
dt_Employees.Load(cmd.ExecuteReader)
connSQLServer.Close()
cmd = Nothing
End Sub
Public Function Max_emp_id_From_Employee()
Dim number As Integer
Try
Dim cmd As New SqlCommand("Select Max (emp_id) Employees", connSQLServer)
connSQLServer.Open()
number = cmd.ExecuteScalar
connSQLServer.Close()
Catch
number = 0
connSQLServer.Close()
End Try
Return number
End Function
Public Sub Insert_Employees(ByVal emp_name As String, ByVal emp_phone As String, ByVal emp_state As Boolean)
Dim cmd As New SqlCommand("Insert Into Employees(emp_id,emp_name,emp_phone,emp_state) values (@emp_id,@emp_name,@emp_phone,@emp_state)", connSQLServer)
cmd.Parameters.Add("emp_id", SqlDbType.Int).Value = emp_id
cmd.Parameters.Add("emp_name", SqlDbType.NVarChar).Value = emp_name
cmd.Parameters.Add("emp_phone", SqlDbType.NVarChar).Value = emp_phone
cmd.Parameters.Add("emp_state", SqlDbType.Bit).Value = emp_state
connSQLServer.Open()
cmd.ExecuteNonQuery()
connSQLServer.Close()
cmd = Nothing
End Sub
Public Sub Update_Employees(ByVal emp_name As String, ByVal emp_phone As String, ByVal emp_state As Boolean, ByVal emp_id2 As Integer)
Dim cmd As New SqlCommand("Update Employees set emp_name=@emp_name,emp_phone=@emp_phone,emp_state=@emp_state where emp_id=@emp_id2", connSQLServer)
cmd.Parameters.Add("emp_id2", SqlDbType.Int).Value = emp_id2
cmd.Parameters.Add("emp_name", SqlDbType.NVarChar).Value = emp_name
cmd.Parameters.Add("emp_phone", SqlDbType.NVarChar).Value = emp_phone
cmd.Parameters.Add("emp_state", SqlDbType.Bit).Value = emp_state
connSQLServer.Open()
cmd.ExecuteNonQuery()
connSQLServer.Close()
cmd = Nothing
End Sub
Public Sub Update_Employees_delete(ByVal emp_id2 As Integer)
Dim cmd As New SqlCommand("Update Employees set emp_state=@emp_state where emp_id=@emp_id2", connSQLServer)
cmd.Parameters.Add("emp_id2", SqlDbType.Int).Value = emp_id2
cmd.Parameters.Add("emp_state", SqlDbType.Bit).Value = False
connSQLServer.Open()
cmd.ExecuteNonQuery()
connSQLServer.Close()
cmd = Nothing
End Sub
End Module
وهذا كود بوتن الحفظ
كود :
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
If add_edit = "Add" Then
Insert_Employees(TextBox1.Text, TextBox2.Text, CheckBox1.CheckState)
Else
Update_Employees(TextBox1.Text, TextBox2.Text, CheckBox1.Checked, emp_id)
السلام عليكم و رحمة الله و بركاته الاخ عبد العزيز معه كامل الحق , وضح اكثر و حاول ان تاتي بكل التفاصيل المتعلقة بالمشكلة , ليس عليه ان يتكهن طريقة العمل لديك. بكل حال مفاد الرسالة المعروضة لديك تفيد بان لديك تكرار في المفتاح الرئيسيي و ان هناك علاقة بين جدولين يجب الانتباه الى ترابط و توافق المفاتيح بينها.
(31-03-20, 12:08 AM)ابو ليلى كتب : السلام عليكم و رحمة الله و بركاته الاخ عبد العزيز معه كامل الحق , وضح اكثر و حاول ان تاتي بكل التفاصيل المتعلقة بالمشكلة , ليس عليه ان يتكهن طريقة العمل لديك. بكل حال مفاد الرسالة المعروضة لديك تفيد بان لديك تكرار في المفتاح الرئيسيي و ان هناك علاقة بين جدولين يجب الانتباه الى ترابط و توافق المفاتيح بينها.
مسحت كل شي له علاقه بال employee ولكن مازالت نفس المشكله