نمایش نتایج 1 تا 5 از 5

نام تاپیک: ساخت کلید خارجی

  1. #1

    ساخت کلید خارجی

    برای ساخت کلید خارجی جداول به ابهام خوردم
    به این صورت که جداول مختلفی دارم مثل یوزر , کامنت ها , امتیازات و ...
    ابهامم اینجاست چرا باید کلید خارجی رو از نوع عددی تعریف کنم , مثلا user_id چرا نباید خود user کلید خارجی باشه ؟
    اگر خود یوزر کلید باشه مزایایی داره , مثلا وقتی میخام از جدول کامنت کوئری بگیرم که کامنت های این یوزر که اسمش داخل session هست بیار خیلی راحت از 1 جدول کامنت فقط کوئری میگیرم و موارد مشابه این که بازم هست و کار سریع تر و با کوئری های سبک تری قابل انجامه

  2. #2

    نقل قول: ساخت کلید خارجی

    کسی به این سایت سر نمیزنه ؟؟

  3. #3
    کاربر دائمی آواتار mmbguide
    تاریخ عضویت
    اسفند 1386
    محل زندگی
    منظومه شمسی
    پست
    1,170

    نقل قول: ساخت کلید خارجی

    سلام

    به گمانم سبک و راحت تر بودن دلیل محکمی نیست چون با ID نوع عددی هم براحتی میشه کار رو انجام داد و کوئری های بهینه نوشت.
    خب شما در جدول اصلی ستون UserName رو به عنوان کلید تعریف کن و در جداول دیگه به عنوان کلید خارجی ازش استفاده کن. فقط نوع داده باید یکسان باشه.

  4. #4

    نقل قول: ساخت کلید خارجی

    ممنون از پاسختون
    پس داخل هر جدول یک کلید داخلی عددی auto inc میذارم که بشه برای شناسائی ترتیب و این جور جزئیات ازش استفاده کرد و username رو هم بین تمام جداول مرتبط با user کلید خارجی میذارم
    به نظر میاد اینجوری کمی حجم بیشتر مصرف شه چون مثلا یک یوزر نیم ali245_good کمی بیشتر از یک عد مثلا 2485 حجم میگیره ولی در عوض وقتی مثلا کامنت های این یوزر میخایم فقط از جدول کامنت یک کوئری سبک جواب میده و نیاز به کوئری از چند جدول نیست , که این تو درخواست های بالا در استفاده از پردازنده و .. سرور صرفه جوئی خوبی میکنه

  5. #5

    نقل قول: ساخت کلید خارجی

    تو این آموزش هم از دیتابیس northwind مایکروسافت استفاده میکنه که یوزر نیم را کلید تعریف کرده برام جالب بود گفتم بذارم
    https://www.aparat.com/v/SCK0t

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •