بایگانی برچسب‌ها : attribute

پایگاه داده رابطه ای Relational Database

پایگاه داده رابطه ای یا Relational Database چیست؟

پایگاه داده رابطه ای (Relational Database) نوعی پایگاه داده براساس مدل رابطه ای (Relational Model) داده‌هاست. در این مدل، داده‌ها در قالب تعدادی جدول (Table) نگه‌داری می‌شوند. به این جداول، رابطه (Relation) نیز گفته می‌شود. هر جدول شامل تعدادی ستون (Column) و ردیف (Row) می‌باشد. به ستون‌ها، ویژگی (Attribute) و به ردیف‌ها رکورد (Record) یا چندتایی (تاپل یا Tuple) نیز گفته می‌شود.

نمونه جدول یک پایگاه داده رابطه ای relational database table
نمونه جدول اطلاعات دانشجویی از یک پایگاه داده رابطه‌ای

مهم‌ترین مفاهیم پایگاه‌داده‌های رابطه‌ای

معمولا هر جدول (یا رابطه)، مربوط به یک نوع موجودیت (نظیر محصول، کارمند، دانشجو و …) می‌باشد و هر ردیف از آن نمایانگر نمونه‌ای از این نوع موجودیت (نظیر محصولی با نام و مدل مشخص) و ستون‌ها هم مقادیر ویژگی‌ها (نظیر قیمت) را برای نمونه‌های مختلف موجودیت موردنظر نگه‌داری می‌کنند. مقادیر مجاز برای هر ویژگی می‌تواند توسط یک دامنه محدود شود. برای مثال ویژگی جنسیت می‌تواند به مجموعه دامنه {“مرد” و “زن”} محدود شود.

کلید اصلی (Primary Key) به ویژگی یا مجموعه‌ای از ویژگی‌ها در یک رابطه گفته می‌شود که می‌تواند یک رکورد را به صورت منحصربفرد مشخص کند. در واقع مقادیر کلیدهای اصلی هرگز در رکوردهای یک رابطه تکرار نمی‌شوند. برای مثال، کد دانشجویی برای رابطه‌ای که اطلاعات مربوط به دانشجویان را نگه‌داری می‌کند (تصویر فوق) گزینه مناسبی برای کلید اصلی به شمار می‌رود.

کلید خارجی (Foreign Key) فیلدی در یک جدول است که به طور یکتا ردیفی از یک جدول دیگر یا همان جدول را مشخص می‌کند. به عبارت بهتر کلید خارجی به عنوان یک ویژگی در جدولی ثانویه تعریف می‌شود و با کلید اصلی یا کلیدی یکتا (یک ویژگی با مقادیر غیرتکراری) از جدول اولیه منطبق می‌شود و به این ترتیب میان ردیف‌های دو جدول ارتباط ایجاد می‌کند. برای مثال تصور کنید در جدولی به نام People اطلاعات مشتریان یک شرکت با کلید اصلی PID و در جدولی دیگر به نام Order اطلاعات مربوط به کالاهای سفارش داده شده توسط تمام مشتریان با کلید اصلی OID نگه‌داری می‌شود. برای اینکه در جدول Order بتوانیم تشخیص دهیم هر کالا توسط چه فردی سفارش داده شده است کافی است PID فرد سفارش دهنده را نیز به این جدول اضافه کنیم. در این حالت ویژگی PID در جدول دوم یک کلید خارجی است.

رابطه‌هایی که در خود داده‌ها را نگه‌داری می‌کنند در قالب Table پیاده‌سازی می‌شوند و به رابطه‌های اصلی (یا Base Relations) موسوم هستند. در مقابل، رابطه‌هایی نیز وجود دارند که داده‌ای را نگه‌داری نمی‌کنند بلکه آن‌ها را با انجام اعمالی روی رابطه‌های اصلی ایجاد می‌کنند. به این نوع رابطه‌ها، رابطه‌های مشتق شده (یا Derived Relations) گفته می‌شود و در قالب دید (View) ها و پرس و جو (Query) ها پیاده‌سازی می‌شوند. ممکن است رابطه‌های مشتق شده اطلاعات خود را از یک یا چند رابطه دریافت کنند.

عملگرهای رابطه‌ای

پرس و جوهایی که روی پایگاه‌داده‌های رابطه‌ای انجام می‌شود براساس جبر رابطه‌ای (Relational Algebra) شکل گرفته‌اند. در جبر رابطه‌ای هشت عملگر پرکاربرد وجود دارد که حاصل آن‌ها در قالب یک رابطه و به صورت زیر تعریف می‌شود. توجه داشته باشید برای عملگرهای اجتماع، اشتراک و تفاضل نکته قابل توجه در مورد رابطه‌هایی که به عنوان عملوند استفاده می‌شود اینست که این رابطه‌ها باید دارای مجموعه ویژگی‌های یکسانی باشند.

  • عملگر اجتماع (Union): این عملگر دوتایی (باینری یا دو عملوندی) بوده و شامل تمام تاپل‌های موجود در عملوندهایش خواهد بود. در رابطه حاصل، ردیف‌های تکراری حذف می‌شوند.
  • عملگر اشتراک (Intersection): حاصل این عملگر دوتایی شامل مجموعه تاپل‌هایی خواهد بود که در هر دو رابطه مشترک هستند.
  • عملگر تفاضل (Difference): حاصل این عملگر دوتایی شامل تاپل‌هایی از رابطه اول خواهد بود که در رابطه دوم وجود ندارند.
  • عملگر ضرب دکارتی (Cartesian Product): هر تاپل حاصل از این عملگر دوتایی با الحاق یک تاپل از رابطه اول و یک تاپل از رابطه دوم شکل می‌گیرد.
  • عملگر انتخاب (Selection): عملگری یکانی است که تنها تاپل‌هایی از رابطه خود را برمی‌گرداند که شرط یا معیار خاصی را برآورده می‌کنند.
  • عملگر تصویر (Projection): عملگری یکانی است که تنها ویژگی‌های مشخص شده را از تاپل‌های موجود استخراج می‌کند.
  • عملگر پیوند (Join): رایج‌ترین نوع این عملگر به پیوند طبیعی (Natural Join) مشهور است. رابطه حاصل از این عملگر دوتایی شامل تمام ویژگی‌های موجود در رابطه‌های دو عملوندش می‌باشد و با الحاق تاپل‌هایی از دو رابطه که روی ویژگی‌های مشترکشان مقادیر یکسان دارند شکل می‌گیرد.
  • عملگر تقسیم (Division): حاصل این عملگر دوتایی تنها شامل ویژگی‌هایی از رابطه اول خواهد بود که در رابطه دوم وجود ندارند. تاپل‌های رابطه حاصل نیز شامل مقادیر این ویژگی‌ها در تاپل‌هایی از رابطه اول خواهد بود که ترکیب آن‌ها با تمام تاپل‌های رابطه دوم در رابطه اول وجود داشته باشد.

پیوندهای پیشنهادی تک دیک

لینک واژه در ویکیپدیا

اچ تی ام ال HTML

اچ تی ام ال یا HTML چیست؟

اچ تی ام ال (HTML) یک زبان نشانه گذاری استاندارد است که برای ایجاد صفحات و اپلیکیشن‌های وب مورد استفاده قرار می‌گیرد. عنوان این زبان برگرفته از سرواژه‌های عبارت HyperText Markup Language به معنای “زبان نشانه‌گذاری ابرمتن” می‌باشد. اچ‌تی‌ام‌ال در کنار CSS و JavaScript به عنوان فناوری‌های اصلی مورد استفاده در دنیای وب شناخته می‌شود.

این زبان، ساختار معنایی و تا حدودی ظاهر یک صفحه وب را توصیف می‌کند. مفاهیمی همچون عناوین، پاراگراف‌ها، لیست‌ها، پیوندها و … با کمک زبان نشانه‌گذاری ابرمتن در قالب اسنادی با ساختار منسجم مشخص می‌شوند. مرورگرهای وب پس از دریافت اسناد HTML از سوی یک سرور وب یا حافظه‌ی محلی رایانه، آن‌ها را به صورت صفحات وب چندرسانه‌ای حاوی متون، تصاویر و … به کاربر نمایش می‌دهند.

المان‌های اچ‌تی‌ام‌ال بدنه‌ی اصلی سازنده‌ی تمامی صفحات وب هستند و با کمک آن‌ها می‌توان تصاویر، متون، پیوندها و … را در داخل یک سند وب تعبیه نمود. اکثر این المان‌ها معمولا با یک تگ آغازین شروع می‌شوند و با یک تگ پایانی نیز به انتها می‌رسند. محتوای المان نیز بین این دو تگ قرار می‌گیرد. عبارت زیر ساختار این نوع المان‌ها را نشان می‌دهد.

<tagName>محتویات تگ</tagName>

به عنوان مثال، قطعه کد HTML زیر از تگ آغازین <p> و تگ پایانی </p> برای تعریف یک پاراگراف استفاده می‌کند. چنین تگ‌هایی می‌توانند تگ‌های دیگری را به عنوان زیرمجموعه خود دربربگیرند.

<p>This is a Paragraph.</p>

گونه‌ی دیگری از تگ‌های اچ تی ام ال نیز وجود دارد که نیازی به بسته شدن (تگ پایانی) ندارند. المان‌های <br> و <img> از این دسته هستند. در داخل تگ‌های آغازین ممکن است خاصیت (Attribute) هایی نیز قید شود. این خاصیت‌ها اطلاعات بیشتری راجع به المان موردنظر ارائه می‌کنند و همواره به صورت جفت‌های “نام خاصیت” و “مقدار” مشخص می‌شوند. به عنوان مثال در نمونه زیر برای تعریف یک المان تصویری از تگ <img> و سه خاصیت src برای تعیین مسیر و نام فایل تصویری، width برای عرض تصویر و height برای ارتفاع آن استفاده شده است. توجه کنید مقدار خاصیت‌ها همواره با استفاده از یک علامت تساوی به “نام خاصیت” منسوب می‌شود. همانطور که گفته شد این المان به تگ پایانی نیاز ندارد.

<img src="/pictures/flower.jpg?x66750" width="200" height="250">

فایل‌های اچ‌تی‌ام‌ال می‌تواند با دربرگرفتن اسکریپت‌هایی که در زبان‌هایی نظیر جاوا اسکریپت نوشته شده است رفتار صفحات و محتوای آن را تحت تأثیر خود قرار دهد. هم‌چنین با کمک CSS، ظاهر و نحوه‌ی قرارگیری المان‌ها در کنار یکدیگر مشخص می‌شود.

پسوند فایل‌های اچ‌تی‌ام‌ال به صورت .htm یا .html می‌باشد.

نمونه‌ای از کد HTML
نمونه‌ای از کد اج‌تی‌ام‌ال