04-10-2010, 04:10 PM
عملت سابقاً على شيء مشابه وكان الجدول للمواد حيث تتكون المادة من أربع حروف + 4 أرقام، ويتم تخزينهم مباشرة ضمن حقل واحد، لكن في حال ما أردت أن أحصل على الرقم التالي لمادة معينة أقوم بذلك مباشرة من خلال Sql server
هنا اعتمدت في دالة substrign أن أقوم بأخذ 4 أرقام من الموضع الخامس، وعليك تغييره حسب المستخدم لديك
ايضاً يمكن ارجع القيمة بشكل 0003 اذا اردت بجملة اعقد قليلاً
ومن ثم تضيف الحروف المطلوبة للناتج السابق من الجملة
PHP كود :
select max(convert(int, SUBSTRING (f1,5,4))+1) from mytable;
هنا اعتمدت في دالة substrign أن أقوم بأخذ 4 أرقام من الموضع الخامس، وعليك تغييره حسب المستخدم لديك
ايضاً يمكن ارجع القيمة بشكل 0003 اذا اردت بجملة اعقد قليلاً
PHP كود :
select right(replicate('0',8) + cast(max(convert(int, SUBSTRING (f1,5,4))+1) as varchar(8)),4)
ومن ثم تضيف الحروف المطلوبة للناتج السابق من الجملة

