تبلیغات :
خرید لپ تاپ استوک
ماهان سرور
آکوستیک ، فوم شانه تخم مرغی ، پنل صداگیر ، یونولیت
دستگاه جوجه کشی حرفه ای
فروش آنلاین لباس کودک
خرید فالوور ایرانی
خرید فالوور اینستاگرام
خرید ممبر تلگرام

[ + افزودن آگهی متنی جدید ]




نمايش نتايج 1 به 6 از 6

نام تاپيک: مشکل در INSERTدادهها

  1. #1
    اگه نباشه جاش خالی می مونه Darya-eng's Avatar
    تاريخ عضويت
    Sep 2010
    محل سكونت
    تهران
    پست ها
    298

    9 مشکل در INSERTدادهها

    سلام
    من TABLEهامو ساختم الان میخوام اطلاعات رو وارد کنم ولی با اینکه من نوع داده ها و تعداد کاراکترها رو رعایت میکنم واز اولین TABLE یکه ساخته شده دارم اطلاعات رو وارد میکنم تا برای FORIEGN KEY ها مشکلی پیش نیاد اما ارور میده وکنار هر مقداری که وارد میکنم یه دایره قرمز میذاره
    با کد هم امتحان کردم ولی نشد

    چیکار کنم؟
    خیلی عجله دارم
    ممنون میشم راهنمایی کنید

  2. #2
    کاربر فعال انجمن گنو/لینوکس Open-Source's Avatar
    تاريخ عضويت
    Aug 2008
    محل سكونت
    usr/src/linux/
    پست ها
    763

    پيش فرض

    یه کوئری برا Insert بنویس ببین چه پیغامی میده بعد بزار اینجا.

  3. #3
    اگه نباشه جاش خالی می مونه Darya-eng's Avatar
    تاريخ عضويت
    Sep 2010
    محل سكونت
    تهران
    پست ها
    298

    پيش فرض

    سلام
    ممنون از توجهتون
    اون مشکل حل شد اما الان توی یه جدول که کیلیدش identity تعریف شده اینطوری:
    Doctor_ID int Identity(1,1),
    اولین مقدارش به جای یک سه وبعدش 5 هست یعنی نه از یک شروع کردهو نه یکی یکی اضافه میکنه؟چرا؟

  4. #4
    حـــــرفـه ای *Batman*'s Avatar
    تاريخ عضويت
    Dec 2005
    محل سكونت
    Virtual Environment
    پست ها
    5,203

    پيش فرض

    سلام.
    اولین مقدارش به جای یک سه وبعدش 5 هست یعنی نه از یک شروع کردهو نه یکی یکی اضافه میکنه؟چرا؟
    شما رکورد حذف کردید.ولی مقدار identity حفظ میشه و باید هم اینطور باشه.
    از شماره‌ی آخرین رکورد حذف شده یکی یکی اضافه میشه.
    ============================================

    چاره کار اینه که از دستور DBCC CHECKIDENT استفاده کنید و از اول شروع کنید(از صفر)
    پارامتر اول : نام جدول
    پارامتر دوم :دستور RESEED برای اینکه شماره گذاری از نو انجام بشه.
    پارامتر سوم : مقدار شروع

    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    نکته بسیار مهم:
    جدول شما باید حداقل یک رکورد داشته باشد تا دستور فوق به درستی اعمال گردد.(جدول نباید خالی باشد)

    در استفاده از این دستور دقت کنید. احتمال تولید خطا هنگام مواجهه با مقادیر تکراری وجود داره و میتونه دردسر ساز بشه.
    Last edited by *Batman*; 31-05-2011 at 00:16. دليل: نکته!

  5. این کاربر از *Batman* بخاطر این مطلب مفید تشکر کرده است


  6. #5
    اگه نباشه جاش خالی می مونه Darya-eng's Avatar
    تاريخ عضويت
    Sep 2010
    محل سكونت
    تهران
    پست ها
    298

    پيش فرض

    سلام.
    شما رکورد حذف کردید.ولی مقدار identity حفظ میشه و باید هم اینطور باشه.
    از شماره‌ی آخرین رکورد حذف شده یکی یکی اضافه میشه.
    ============================================

    چاره کار اینه که از دستور DBCC CHECKIDENT استفاده کنید و از اول شروع کنید(از صفر)
    پارامتر اول : نام جدول
    پارامتر دوم :دستور RESEED برای اینکه شماره گذاری از نو انجام بشه.
    پارامتر سوم : مقدار شروع

    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    نکته بسیار مهم:
    جدول شما باید حداقل یک رکورد داشته باشد تا دستور فوق به درستی اعمال گردد.(جدول نباید خالی باشد)

    در استفاده از این دستور دقت کنید. احتمال تولید خطا هنگام مواجهه با مقادیر تکراری وجود داره و میتونه دردسر ساز بشه.
    درسته دقیقا همینطوره که شما فرمودید
    من اینطور متوجه شدم که:
    اگر رکورد 1و2 و3داشته باشیم سپس 3 رو پاک کنیم اگر رکور ایجاد کنیم رکورد صفر ایجاد میشود ؟
    ولی من میخوام یکی از قبلیش بیشر باشه
    اخه این ستون که identityشده کلید اصلیه ونباید مقادیرش تکراری باشه پس ریست شدن به مقدار خاصی دراین مورد کاربرد نداره
    چیکارکنم؟

  7. #6
    حـــــرفـه ای *Batman*'s Avatar
    تاريخ عضويت
    Dec 2005
    محل سكونت
    Virtual Environment
    پست ها
    5,203

    پيش فرض

    اگر رکورد 1و2 و3داشته باشیم سپس 3 رو پاک کنیم اگر رکور ایجاد کنیم رکورد صفر ایجاد میشود ؟
    ولی من میخوام یکی از قبلیش بیشر باشه
    اگر از دستور بالا استفاده کنیم،رکورد بعدی ما 1 هستش(0+1) که چون قبلا پر شده با خطا مواجه میشیم.
    چنانچه شما رکورد سوم رو پاک کنید،شماره‌ی رکورد بعدی 4 خواهد بود.
    اگر میخواهید جای رکوردهای خالی رو پر کنید(مثلا رکورد سوم) باید براش برنامه بنویسید.
    در لینک زیر یه راهکار برای حذف فاصله ها ارائه شده :

    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    موفق باشید.

  8. این کاربر از *Batman* بخاطر این مطلب مفید تشکر کرده است


Thread Information

Users Browsing this Thread

هم اکنون 1 کاربر در حال مشاهده این تاپیک میباشد. (0 کاربر عضو شده و 1 مهمان)

User Tag List

قوانين ايجاد تاپيک در انجمن

  • شما نمی توانید تاپیک ایحاد کنید
  • شما نمی توانید پاسخی ارسال کنید
  • شما نمی توانید فایل پیوست کنید
  • شما نمی توانید پاسخ خود را ویرایش کنید
  •