الانتقال إلى المحتوى

سيناريو بناء مصفوفة Type لحقل هاتف الموظف


MMA

Recommended Posts

إخواني الكرام ، تحية طيبة وبعد،

أنظروا معي الي هذا السيناريو الجميل

1- قمت بإنشاء النوع التالي :

Create Or Replace Type T_Phone Is Object(Phone1  VarChar2(5),Phone2 VarChar2(10))
/



2- وقمت بإنشاء جدول الموظفين ، ويرتبط النوع السابق لهاتف الموظف :

Create Table Emp
(
 Emp_ID	   Number(10), 
 Emp_Code   VarChar2(10),
 Emp_Name  VarChar2(50),
 Emp_Phone  T_Phone,
 Constraint PK_EMP Primary Key(Emp_ID)
)
/



3- قمت بإجراء إدراج لمجموعة من السجلات :

Insert Into Emp Values(1,'001','Ahmed',T_Phone('02-54215678','012-25789425'));
Insert Into Emp Values(2,'002','Usif',	 T_Phone('05-32564785','012-85426549'));
Insert Into Emp Values(3,'003','Sara',	T_Phone('04-45789657','010-12587648'));



4- ولكي أقوم بإجراء تعديل علي إحدي السجلات كما يلي :

Update Emp Set Emp_Phone = T_Phone('02','15487528') Where Emp_ID = 2;



ولكن مشكلتي الحقيقية عند أمر الـ Select !!

Select * From Emp;
Emp_ID	   Emp_Code	 Emp_Name		   Emp_Phone(Phone1,Phone2)
-----------	   ----------------	  -----------------		   ------------------------------------------
1				 001				Ahmed				 T_Phone('02-54215678','012-25789425')
2				 002				Usif					  T_Phone('05-32564785','012-85426549')
3				 003				Sara					 T_Phone('04-45789657','010-12587648')



المطلوب :
كيفية إقتباس حقل واحد من المصفوفة T_Phone ، علي سبيل المثال عرض Phone1 في عمود مستقل ، و Phone2 في عمود آخر كما يلي :

Emp_ID	   Emp_Code	 Emp_Name		   Phone1			 Phone2
-----------	   ----------------	  -----------------		   -------------------	 ----------------------
1				 001				Ahmed				 02-54215678	 012-25789425
2				 002				Usif					  05-32564785	 012-85426549
3				 003				Sara					 04-45789657	 010-12587648



إخواني الكرام ، آسف علي طول رسالتي ، ولكنني أتمني مساعدتكم

وشكراً

رابط هذا التعليق
شارك

فكرة جيده لتعريف type ثم التعامل معه من خلال جدول الموظفين ..

فى حالة ان عدد ارقام الهاتف الاول معروف وثابت

يمكنك استخدام امر

substr(fieldname,startfrom,lenght)



ولكن لماذا فضلت استخدام هذه الطريقه .. ؟
وما هى المزايا من استخدامها وكيفية التعامل معها من خلال شاشات الادخال
أو الاستعلام برقم الهاتف

وكيفية التعامل .. اذا طلب اضافة رقم هاتف ثالث بعد فترة من التعامل وادخال بيانات بالجدول ؟

لماذا لم تنشئ جدول تفصيلى تابع لجدول الموظف الاساسى .. فى حالة وجود عدد كبير من ارقام الهواتف
يحتوى على رقم الموظف ورقم الهاتف ونوعه

هل ستكون هناك مرونه عند الاستعلام بأى من هذه الارقام ؟

شكرا على الجهد المبذول

منتظر ردك

رابط هذا التعليق
شارك

أخي الكريم ، أشكرك كثيراً علي الرد ،

أخي Amgad ، هناك العديد من الطرق !!
1- يمكن من خلال إنشاء حقل واحد وتقسيمة كما تشاء.
2- يمكن من خلال بناء جدول ( حقل متعدد القيم ) ، ويتم الربط مع الجدول الرئيسي.
3- يمكن من خلال إنشاء أكثر من حقل بنفس الجدول بحيث أن كل حقل يمثل هاتف معين.
4- يمكن إستخدام طريقة Type.


إذاً أخي الكريم ، هناك العديد من الطرق ، والبرمجة غير مقيدة علي شيء محدد.

لكنني من الأفراد الذي لديهم الفضول ، وهذا الفضول ساعدني في عملي ، لأنني وجدت
برنامج المخازن والمشتريات والمبيعات به العديد من الأشكال والأنماط بقاعدة بيانات SQL-Sever

فإذا كان لديك الفكرة ، أتمني المساعدة

وشكراً لك وللجميع



--------------------------
( رجاء المساعدة )

رابط هذا التعليق
شارك

انضم إلى المناقشة

يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.

زائر
أضف رد على هذا الموضوع...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   تمت استعادة المحتوى السابق الخاص بك.   مسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

جاري التحميل
×
×
  • أضف...

برجاء الإنتباه

بإستخدامك للموقع فأنت تتعهد بالموافقة على هذه البنود: سياسة الخصوصية