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

سؤال الى خبراء SQL Server & Database

مغلق
بدأه HaithamNazzal في 15 مايو 2005 · 6 رد · 852 مشاهدة · في قواعد بيانات Microsoft SQL Server
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

تحيى للجيمع ،،،

لو كان عندي Table وعرفت احدى الـ Fields على انه Auto كما تعلمون انه يصبح بجمع على نفسه واحد كل

ما ادخل فيه Record

سؤالي : ما هي الطريقة حتى اصفر هذا الField اي انه اذا عملت Delete لل Data الموجود ثم ادخلت Data مره اخرى فان هذا

Field لا يبدأ من صفر وانما يبدا من اخر رقم كان موجود ويزيد له 1

وانا لا اعلم اي حل الا ان اعمل Drop للtable ثم create فهل هناك اي حل ان اصفر هذا ال filed

يــــا أقصى .... لا تنادي ..... فلن يجيبك احد

#2

هناك طريقة :

USE DBName
GO 
DBCC CHECKIDENT (TableName, RESEED, 1)

تم تعديل هذه المشاركة بواسطة HaithamNazzal في 15 مايو 2005 في 14:08

يــــا أقصى .... لا تنادي ..... فلن يجيبك احد

#3

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

أخى هيثم

اقتباس
وانا لا اعلم اي حل الا ان اعمل Drop للtable ثم create فهل هناك اي حل ان اصفر هذا ال filed

وأنا أيضا حدود علمى أن هذه هى الطريقة الوحيده لأنك فيها تحدد أن البداية تكون من الصفر

والسؤال هو ما يمنعك من هذه الطريقة؟

إذا كنت تريد إلغاء السجلات مع الحفاظ على الرقم المسلسل فعليك بـ Delete أو Truncate

أما تصفيره فعليك بـ if exists .... drop table التى تستطيع تعلمها من السيكول نفسه فى السكريبت Script الموجود فى قوائمه

يسر الله لك طرق العلم وآتاك الإجابة التى ترضيك وتنفعك

اللهم لا سهل إلا ما جعلته سهلا وأنت تجعل الحزن إن شئت سبحانك سهلا

عن عبدالله بن عمر رضي الله عنهما أن رسول الله صلى الله عليه وسلم قال :

( أحب الناس إلى الله أنفعهم ، وأحب الأعمال إلى الله عز وجل سرور تدخله على مسلم ، أو تكشف عنه كربة ، أو تقضي عنه دينا ، أو تطرد عنه جوعا ، ولأن أمشي مع أخي المسلم في حاجة أحب إليّ من أن اعتكف في المسجد شهرا ، ومن كف غضبه ستر الله عورته ، ومن كظم غيظا ، ولو شاء أن يمضيه أمضاه ، ملأ الله قلبه رضا يوم القيامة ، ومن مشى مع أخيه المسلم في حاجته حتى يثبتها له ، أثبت الله تعالى قدمه يوم تزل الأقدام ، وإن سوء الخلق ليفسد العمل كما يفسد الخل العسل )

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

#4

الاخ abulyaman حفظه الله

لقد جربت الطريقة السابقة وهي كتابة :

USE Brokdata

GO

DBCC CHECKIDENT (cl_transaction1, RESEED, 0)

وقد نجحت هذه الطريقة معي الان

بعد عملية حذف recoreds من ال table شغل هذه الطريقة في SQL Query Analyzer ومن ثم اضف بعض المعلومات

وان شاء الله تنجح

لانها نجحت معي

شكرا لك

يــــا أقصى .... لا تنادي ..... فلن يجيبك احد

#5

الحمد لله

ربنا يوفقك على طول ولا يوقفك فى كود

عن عبدالله بن عمر رضي الله عنهما أن رسول الله صلى الله عليه وسلم قال :

( أحب الناس إلى الله أنفعهم ، وأحب الأعمال إلى الله عز وجل سرور تدخله على مسلم ، أو تكشف عنه كربة ، أو تقضي عنه دينا ، أو تطرد عنه جوعا ، ولأن أمشي مع أخي المسلم في حاجة أحب إليّ من أن اعتكف في المسجد شهرا ، ومن كف غضبه ستر الله عورته ، ومن كظم غيظا ، ولو شاء أن يمضيه أمضاه ، ملأ الله قلبه رضا يوم القيامة ، ومن مشى مع أخيه المسلم في حاجته حتى يثبتها له ، أثبت الله تعالى قدمه يوم تزل الأقدام ، وإن سوء الخلق ليفسد العمل كما يفسد الخل العسل )

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

#6

الاخ abulyaman

شكرا لك ويوفقك انت كمان

تسلم

يــــا أقصى .... لا تنادي ..... فلن يجيبك احد

#7

ملحوظة بسيطة

عند استخدامك هذا الأسلوب في جدول فارغ تماماً فستكون أول قيمة مدخلة هي نفس القيمة التي حددتها في العبارة ، أما إذا قمت بإجراءها على جدول يحتوي على بيانات فعلاً ، فسوف تكون القيمة المدخلة التالية هي القيمة المحددة في العبارة + 1

مع مراعاة ان إجراء هذه العملية على جدول يحتوي على بيانات فعلاً ، يجب عندها عند تحديد قيمة أولية أن نراعي أن تكون أكبر من او تساوي أكبر قيمة موجودة حالياً داخل الجدول وإلا ستحصل على رسالة خطأ أثناء عمل إدخال لسجل جديد لأنه سيعتبر أن القيمة مكررة

وللتوضيح مثلا إذا كان ندك جدول اكبر identity فيه 70 وانت استخدمت القيمة 0 في الدالة المذكورة ، وكنت قد حذفت من قبل قيمة 1 ، 2 ، وبدأت القيم من 3

هنا وبعد تنفيذك للدالة مع قيمة ال resed = 0 فسيقبل إدخالك الجديد ، لسجلين ، حيث يحدد الاول قيمة ال identity فيه = 1 ، والذي يليه 2 ، ثم .... المفروض 3 ، وعندها يحدث خطأ لأن 3 موجود فعلاً

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

والله تعالى أعلم

تم تعديل هذه المشاركة بواسطة محمد النحراوي في 17 مايو 2005 في 00:54

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

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