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

Autonumber

بدأه cplusplus في 14 مارس 2008 · 7 رد · 1,355 مشاهدة · في قواعد بيانات Microsoft SQL Server
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم

ممكن تفيدوني بطريقة تعريف عمود بحيث يكون autonumber

وراح يكون هو الـــPK

علما إن الــ(version) الب أستخدم ـSQL Server which comes with visual studio .net 2005

#2

وعليكم السلام

من خلال sql server الموجود على اليسار

تفتح الداتا بيز وثم تفتح الجدول وفي الزر اليميني تختار show table definition

تختار الحقل وفي الزرا ليميني تختار الpropaility

يوجد خاصة is identity specification تختار yes

وتختار مقدار الزيادة

أرجو ان يكون هذا هو المطلوب

#3

يعطيك العافيه

ممكن تعلمني ايش data type الي اختاره لأني

جربت الطريقه وعرفته int بس واجهت مشكله في اني لما أدخل الرقم يطلب مني أدخل 32 بت بفورمات محدد ما أدري وين المشكله

أنا أبغى أقدر مثلا أحدد عدد من الdigits مثلا يبدا بــ000001

وهكذا يزيد أو أبا من 1

#4

ال datatype هو int

بس وين ظهرت المشكلة (يعني عند أي حدث)؟

على كل حال اذا اردت ان تبدأ العد من 1000 فعند ال identity seed اكتب 1000

ومقدار الزيادة اكتبها عند ال identity invrement

#5

السلام عليكم ورحمة الله

ارجو تحديد المطلوب بشكل اوضح فهل

تريد ترقيم تلقائي 1 2 3 4 5 .....

ام تريد 00001 00002 00003 .....

فالمطلوب الامر هو مباشر كما ذكر الاخ بحيث تستطيع اضافة اي عدد رقمي (smallint int bigint .... ) ثم من خصائص الحقل يوجد الخيار Identity اختر yes وانتهى الامر

اما الخيار الثاني فبحاجة الى معالجة اخرى سنتكلم عنها ان اردت ذلك

#6

يعطيكم العافية

أتمنى توضيح طريقة تعريف ID بشكل محدد

مثلا

ABC0001

الجزء الحرفي يكون ثابت والرقمي متغير

شاكره تعاونكم

#7

تفضل اخي الكريم

هذا اجراء يقوم بهذا العمل اي لا يوجد طريقة مباشرة لمثل هذا العمل

create table mytable (id nvarchar(7)) 

go  

insert into mytable values('ABC0001')

go

CREATE FUNCTION dbo.CustomID ()

RETURNS nvarchar(7)
AS BEGIN declare @Result nvarchar(7)

select @Result = max(id)  from mytable set @Result =left(@Result,3) + right(N'0000' + cast( cast( right(@result,4) as int) +1 as nvarchar(4)) ,4)

	RETURN @Result

END
GO

select   dbo.CustomID ()


--or  
-- insert  into mytable values( dbo.CustomID() )
#8

يعطيك العافية بجرب إن شاالله

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