السـلام عليكم
اخواني لدي جدولين الاول معلومات عن الموظفين (الاسم ، الرقم الوظيفي ،تاريخ التعيين )
وعندي جدول آخر فيه ( الرقم الوظيفي ، رقم الفاتوره )
اريد طريقة بحيث اذا قمت بتخزين معلومات الموظف قي الجدول الأول ان يتم رقم الوظف في الجدول الثاني تلقائياً بدون ما اقوم بكتابة اكواد فتح قاعدة البيانات وتخزين الرقم الوظيفي في الجدول الثاني ....
هل الحل في ربط الجدولين من خلال علاقة تفي بالغرض ؟؟
وشـكراً لكم
السلام عليكم
اختي العزيزة ان اي حقل مشترك بين جدولين يجب ان يحتويا على نفس الرقم لذا اذا قمنا بادخال رقم في الجدول الرئيسي فيجب ادخال نفس الرقم في الجدول الثانوي
بمعنى يجب ان يكون الاضافة لكلا الجدولين بنفس الوقت
تحياتي
اخي SAJAD شـكراً على الرد
فهمت من كلام انه لايوجد طريقة لربط الجدولين بحيث عند تخزين رقم الموظف في جدول ، يظهر تلقائياً في جدول آخر
طيب ... مافائدة ربط الجداول عند التعامل معها في الفيجيوال دوت نت ؟؟؟
هل الربط مهم في الجداول ..وما هي فائدته ؟؟؟

نعم الربط مهم جدا
ابسط مثال: ماذا لو اردتي ان تحذفي سجلا من الجدول الرئيسي وبالمقابل تريدين ان يحذف كل ما هو متعلق من السجل الثاني بالسجل الاول؟
فالمفتاح الثانوي يمثل حلقة وصل بين الجدولين فمثلا يوجد هنالك علاقات تسمى One to One و One to Many و Many to Many
فمن الممكن سجل واحد يرتبط بسجل واحد فقط او اكثر او عدة سجلات ترتبط بعدة سجلات من الجدول الثانوي
معناها .. فقط في عمليات الحذق نستفيد من ربط الجدولين ... اي عندما نحذف من الجدول الرئيسي بيانات الموظف يقوم بحذف جميع ما هو متعلف برقمه الوظيفي في الجدول الآخر ..
فقط في حالة الحذف تكون الافادة من الربط ؟؟
الا يوجد طريقة لربط الجدولين ... اي عند اضافة رقم الموظف في الجدول الرئيسي يقوم باضاقته في الجدول الثاني ..
معلش غلبتك



لانني لا اريد استخدام جملة الاضافة (INSERT) مرتين .. مرة للجدول الاول ومرة بالجدول الثاني

اختي انا لم اقل ان الفائدة تتلخص فقط في الحذف!!!!!
يجب استخدام جملية الInsert مرتين؟ الى الان لم اسمع بInsert واحد لكلا الجدولين؟؟؟؟؟؟؟؟؟؟
طيب كيف اضيف معلومات للجدول الثاني عن طريق الجدول الاول؟
لا يوجد حقل تضاف تلقائيا من نفسه الى الجدول ما عدا الحقول التي تكون Primary Key في بعض الاحيان نجعل قيمة الحقل تلقائي بحيث تضاف الرقم وتزيد بمقدار واحد تلقائيا وهذا يعتمد على الاضافة لبقية الحقول بحيث لو لم نستخدمة جملة الInsert فالحقل التلقائي لن تضاف لها رقما تلقائيا
لذا لا يوجد شيء اسمه اضافة معلومات بدون جملة الاضافة (Insert)
تحياتي
في قواعد البيانات اسكيو ال سيرفر هناك خاصية تسمى تريقر ممكن تعمل المطلوب ،، بمعنى عند اضافة سجل في الجدول الأول وظيفة التريقر يضيف الرقم للجدول الثاني دايركت .
بالتوفيق
هذا الكود اتمنى ان يفيدك
كود :
dim tran As OleDbTransaction
cmd.CommandText = "insert into A(Id_user,emp_name)values(?,?) "
cmd.Connection = con
cmd.Parameters.Clear()
cmd.Parameters.Add(New OleDbParameter("@Id_user", OleDbType.VarChar)).Value = Val(txt_Id_user.Text)
cmd.Parameters.Add(New OleDbParameter("@emp_name", OleDbType.VarChar)).Value = Val(txt_emp_name.Text)
con.Open()
tran = con.BeginTransaction
cmd.Transaction = tran
cmd.ExecuteNonQuery()
cmd1.CommandText = "insert into b (Id_user,phone,email,note)values(?,?,?)"
cmd1.Connection = con
cmd1.Parameters.Clear()
cmd1.Parameters.Add("@Id_user", OleDbType.VarChar).Value = Val(txt_Id_user.Text)
cmd1.Parameters.Add("@phone", OleDbType.VarChar).Value = Trim(Val(txt_phone.Text))
cmd1.Parameters.Add("@email", OleDbType.VarChar).Value = Trim(txt_email.Text)
cmd1.Transaction = tran
cmd1.ExecuteNonQuery()
tran.Commit()
con.Close()
(27-03-14, 10:06 PM)Ahlam كتب : [ -> ]معناها .. فقط في عمليات الحذق نستفيد من ربط الجدولين ... اي عندما نحذف من الجدول الرئيسي بيانات الموظف يقوم بحذف جميع ما هو متعلف برقمه الوظيفي في الجدول الآخر ..
فقط في حالة الحذف تكون الافادة من الربط ؟؟
الا يوجد طريقة لربط الجدولين ... اي عند اضافة رقم الموظف في الجدول الرئيسي يقوم باضاقته في الجدول الثاني ..
معلش غلبتك 


السلام عليكم أختي الكريمة احلام
عندي نفس المشكلة و ما زلت ابحث عن حل لها ..يعني عندي داتاغريدفيو و تستقبل بيانات من قاعدة اكسس ..لكن العمود الأول و الثاني أحب أن تكون بياناتهما تأتي من جدول آخر ..فما هو الحل ؟