چطوری رکورد های بانک sql رو شیفت بدم؟؟؟

سلام دوستان من می خواستم بدونم وقتی واسه کاربر یک پنل می زارم که باهاش یک رکورد دلخواه رو پاک کنه چطور می تونم به بانک دستور بدم که از اون رکورد به بعد کد همه رکورد ها رو یکی کم کنه؟؟؟ یعنی شیفت بدمشون به بالا
ممنون
 

foranyone

Well-Known Member
سلام دوستان من می خواستم بدونم وقتی واسه کاربر یک پنل می زارم که باهاش یک رکورد دلخواه رو پاک کنه چطور می تونم به بانک دستور بدم که از اون رکورد به بعد کد همه رکورد ها رو یکی کم کنه؟؟؟ یعنی شیفت بدمشون به بالا
ممنون

چرا میخوای این کارو بکنی؟

این کاراز لحاظ SEO میتونه اشتباه باشه برای مثال فرض کن یک صفحه اخبار با این آدرس در گوگل ذخیره بشه:

PHP:
news.php?newsid=2
بعد که شما شیفت بدین آدرس صفحات تغیر پیدا میکنه همه چی بهم میخوره !!


به نظر من اگه دلیل خاصی برا اینکار ندارین بی خیال:wink:
 
خب من می خوام که این رکورد ها مرتب باشن چون وقتی می خوام رکورد جدید ثبت کنم کد این رکورد رو +1 تعداد رکورد های موجود در بانک می کنم.کنم اگر قبلا یکی از رکورد هام مثلا رکورد 2 پاک شده باشه من موقع ثبت رکورد جدید 3 رو واسه دستور insert می فرستم با اینکه رکوردی با کد 3 دارم
 

ziXet

مدیر انجمن PHP/MYSQL
خب من می خوام که این رکورد ها مرتب باشن چون وقتی می خوام رکورد جدید ثبت کنم کد این رکورد رو +1 تعداد رکورد های موجود در بانک می کنم.کنم اگر قبلا یکی از رکورد هام مثلا رکورد 2 پاک شده باشه من موقع ثبت رکورد جدید 3 رو واسه دستور insert می فرستم با اینکه رکوردی با کد 3 دارم
همونطور که foranyone عزیز گفت این کار کاملا اشتباست و شما حتما باید فیلد id رو auto increment تعریف کنی
 

Masoud1365

مدیر انجمن
به نظر من اگر که دلیل خاصی برای این کار دارید یک فیلد دیگه داخل دیتا بیس اضافه کنید و هر بلایی میخواهید سر اون بیارید :wink:
 

k2-4u

Well-Known Member
شما کلا طراحی سیستم و دیتابیشتون مشکل داره
چنین کاری غیر معقوله شما باید با معلوماتتون . سیستم رو طوری طراحی کنید که نیازی به این کار نباشه
---
صحبت حمید در مورد . Seo رو هم کاملا تایید می کنم
 

جدیدترین ارسال ها

بالا