السلام عليكم
انا عندي مشروع وابغى اعرف كيف اعمل ترقيم تسلسلي (ترقيم تلقائي) في sql*plus
بليز :s
السلام عليكم
انا عندي مشروع وابغى اعرف كيف اعمل ترقيم تسلسلي (ترقيم تلقائي) في sql*plus
بليز :s
CREATE SEQUENCE a INCREMENT BY 1 START
WITH 0 MAXVALUE 5000 NOCYCLE NOCACHE NOORDER
;
this code will create a sequence name = a
and start with =0
and will increment by 1 each time
if you type
select a.nextval from dual
;
will get the next value and so on
i hope it will work for you
:blink:
ممكن طريقة أوضح من هذه :( :blink: <_< :s
لو تكرمتوا
كيفية عمل ترقيم تلقائي
1- CREATE SEQUANCE A START WITH 1 NOMAXVAL INCREMENT BY 1;
تكتب في SQL
2- ADD COLUM IN THE TABLE NAME IT SERIAL
3-CREATE FORM IN FORM BUILDER AND
4- WHEN_CREATE_RECORD (TRIGGER)
IN PLSQL EDIROT WRITE
SELECT A.NEXTVAL INTO :SERIAL FROM DUAL;
TRIGGER MUST BE AT FORM LEVEL
هذه هي الطريق الي اعرفها أرجو أني أكون أفدتك
اخى أبو جواد اسف اننى لم اوصل المعلومه لك
ارجوك وضح ما هى المشكله عندك
لو توجد عندك فورمه ضعها و سوف اربطها لك على الفورم حتى تعمل معك و لا تتردد ان تسأل حتى تثبت المعلومه عندك
الاوراكل ابن حلال توجد به طريقة جاهزه لعمل رقم متسلسل (SEQUANCE) فقط اعطيه اسم و حدد يبدأ من اى رقم و فى كل مره ماهى مقدار الزياده
CREATE SEQUANCE A START WITH 1 NOMAXVAL INCREMENT BY 1
الاسم
SEQUANCE ------ >a
يبدأمن <----- 1
مقدار الزياده <--- 1
اخي سو هالسلكت لكن يجب عليك التاكيد من انه في رقم واحد على الاقل لو قلنا انت بترقم الخانه اللي اسمها a اللي في الجدول t
لازم قبل ما تبدى اول رقم يكون في مثلا صفر باول خانه
بعدين تسوي هالسلكت
select max(a) + 1
from t;
خلاص قضينا :)
طيب كيف اعملها في plsql
السلام عليكم هذه طريقه أسهل
when_create_recored
declare
temp number;
begin
select nvl(max(serial),0)+1
into TEMP from table_name;
:table_name.serial := TEMP;
end;
// serial is a column in table called table_name//
شكرا لكم جميع
بس اذا سمحتوا مافي طريقه بالسي شاربc#
شكرا لكم جميع
بس اذا سمحتوا مافي طريقه بالسي شاربc#
هذا الموضوع مغلق.