الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

الترقيم التلقائي

مغلق
بدأه الأسيف في 14 يوليو 2003 · 7 رد · 1,447 مشاهدة · في قواعد بيانات Oracle
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

(f)هل هناك في الاوراكل ترقيم تلقائي ..؟

وإذا كان كذلك ..فكيف يكون عمله ..(f)

#2

السلام عليكم

اخي حد السيف نعم هناك آلية للترقيم في الأوراكل وهي sequence ابحث في المنتدى على ماأظن يوجد درس عن هذا الموضوع .

تحياتي لك وللجميع ..

#3

سوف اعمل نموزج عن هذ الموضوع ان شاء الله حيكون عبارة عن شرح مبسط

#4

ياليت اخوي حسين تسرع في الموضوع هذا لاني والله محتاج بشده

#5

الأخ الذي يسأل عن الترقيم التلقائي في الأوراكلوإذا أردت عملة اتبع الآتي :-

- الطريقة الأولي :-

لكي نعرف كيفية إنشاء الترقيم التلقائي بهذه الطريقة نتبع الآتي :-

ننشأ حقل ترقيم تلقائي في SQL وذلك بهذا الأمر :-

CREATE SEQUENCE SEQUENCE NAME ;

وهذه هي الصيغة العامة لكتابة إنشاء حقل ترقيم تلقائي ولتطبيق ذلك نفترض أننا نريد إنشاء حقل ترقيم تلقائي باسم AA فنكتب الأمر كالتالي :-

CREATE SEQUENCE AA;

ولتشغيل هذا الحقل ولجعله يبدأ من رقم 1 نكتب ذلك الأمر والصيغة العامة هي كالتالي:-

SELECT SEQUENCE_NAME.NEXTVAL FROM DUAL;

وبذلك نكون قد أنشأنا حقل ترقيم تلقائي ولربط هذا الحقل بالنموذج لابد عند إنشاء الجدول الذي سوف نعمل النموذج منه أن ننشأ حقل فارغ ولا نكتب فيه شئ .

ولتطبيق ذلك ننشأ جدول باسم ZEYAD ويحتوي علي الحقول التالي

STUDENT_NO

STUDENT_NAME

ADRESS

SEQ

وحقل الـ SEQ هو الحقل الفارغ والذي سوف يكون في النموذج كحقل ترقيم تلقائي

5- ننشأ نموذج باستخدام FORM BUILDER فيكون شكل النموذج

ولربط حقل الترقيم الذي أنشأناه في SQL والمسمي AA بالحقل الفارغ الذي أنشأناه في جدول zeyad والمسمي seq والذي هو هنا في النموذج باسم الترقيم ندخل علي خصائص هذا الحقل وفي الخاصية Initial value نكتب داخلة :-

Sequence.sequence_name.nextval

وهذا تطبيقها علي المسلسل AA وربطه مع الحقل الفارغ seq

:sequence.aa.nextval

ويعيب هذه الطريقة أنك إذا دخلت النموذج سواء سجلت أم لا فإنه يبدأ في الترقيم التلقائي فيكون السجلات عددها مثلاً 5 سجلات الترقيم التلقائي وصل إلي 25 ولتلافي ذلك نتبع الآتي :-

- ندخل علي الـ trigger الخاص بالجدول وذلك بالضغط علي F11 ونحن محددين اسم الجدول من شاشة الـ Navigator ونكتب الكود الآتي بعد اختيار الحدث pre-Insert :-

Select sequence_name.nextval into :column_name from dual;

ونطبق هذه القاعدة علي هذا النموذج فيكون شكل الكود كما يلي :-

Select aa.nextval into :seq from dual;

فبذلك يقلل من تكرار الترقيم إلا في حالة الحفظ وبذلك نكون قد أنشأنا المسلسل .

#6

بسم الله الرحمن الرحيم

أخي حسين علي

أرجو أن توفر لنا هذا النموذج الذي وعدتنا به حول الترقيم التلقائي

أخوك / لؤي (أبو العبد)

#7

السلام عليكم و رحمه الله و الصلاه و السلام على رسول الله

قد تجد في هذا الدرس طلبك إن شاء الله

درس في الـ Sequence

#8

بسم الله الرحمن الرحيم

جزاك الله كل خير أخي الكريم Mr Crack

وبارك الله فيك

أخوك / لؤي (أبو العبد)

هذا الموضوع مغلق.

مواضيع مشابهة