PostgreSQL first section | پستگرس قسمت اول
📖توضیحات درس
📄جزوه
مفاهیم کلیدی
Database
مجموعهای از دادههای ساختار یافته که به صورت بهینه ذخیره شده و امکان واکشی (Fetch) و تغییر (Manipulate) دادهها را فراهم میکند.
DBMS (Database Management System)
نرمافزاری که به کاربران اجازه میدهد پایگاه داده را ایجاد، نگهداری و مدیریت کنند و وظایفی مانند اضافه کردن، حذف و بهروزرسانی دادهها را انجام دهند.
Relational Database
نوعی پایگاه داده که دادهها را در قالب جداول (Table) ذخیره کرده و بین آنها روابط مشخصی تعریف میکند (مانند PostgreSQL و MySQL).
Table
ساختاری متشکل از سطرها (Rows) و ستونها (Columns) که دادههای مرتبط به هم را در خود سازماندهی میکند.
CRUD
مخفف چهار عملیات اصلی در دیتابیس: Create (ایجاد)، Read (خواندن)، Update (بهروزرسانی) و Delete (حذف).
Constraint
مجموعهای از قوانین که هنگام تعریف جداول بر روی ستونها اعمال میشوند تا از درستی و پایداری دادهها اطمینان حاصل شود.
Data Types
انواع داده در پستگرس شامل Integer (اعداد صحیح)، Varchar (رشته با طول محدود)، Boolean (منطقی) و Serial (شمارنده خودکار) است [9, 23].
نکات مهم مصاحبهای
چرا به جای آرایه (Array) در حافظه RAM از دیتابیس استفاده میکنیم؟
زیرا دادهها در آرایه با خاموش شدن برنامه یا قطع برق از بین میروند (Volatile)، اما دیتابیس دادهها را روی هارد ذخیره کرده و ماندگاری (Persistence) آنها را تضمین میکند.
تفاوت Varchar و Text در PostgreSQL چیست؟
در Varchar میتوان محدودیت طول (مثلاً ۲۵۵ کاراکتر) تعیین کرد، اما در Text محدودیتی برای طول رشته وجود ندارد و برای متنهای طولانی استفاده میشود.
مفهوم Primary Key چیست؟
ترکیبی از دو ویژگی NOT NULL و UNIQUE است؛ یعنی مقدار آن نباید خالی باشد و باید در کل جدول منحصربهفرد باشد تا هر رکورد به درستی شناسایی شود.
هنگام استفاده از دستورات UPDATE و DELETE چه نکته امنیتی را باید رعایت کرد؟
حتماً باید از شرط WHERE استفاده کرد، در غیر این صورت تمامی رکوردهای جدول بهروزرسانی یا حذف خواهند شد که خطرناک است.
تفاوت اصلی پایگاه داده SQL و NoSQL چیست؟
پایگاه داده SQL دادهها را در جداول ساختار یافته با روابط مشخص ذخیره میکند، در حالی که NoSQL برای دادههای غیرساختار یافته یا نیمهساختار یافته استفاده میشود.
Primary Key چه وظیفهای دارد؟
به عنوان یک شناسه منحصربهفرد برای هر ردیف عمل کرده و به صورت خودکار باعث بهبود کارایی (Performance) از طریق ایندکسگذاری میشود.
- کاربرد
LIMITوDISTINCTدر کوئریها چیست؟
LIMIT تعداد نتایج خروجی را محدود میکند و DISTINCT برای حذف دادههای تکراری و نمایش مقادیر منحصربهفرد به کار میرود.
- تفاوت
ANDوORدر شرطWHEREچیست؟
در AND باید تمامی شروط برقرار باشند تا رکورد نمایش داده شود، اما در OR برقرار بودن تنها یکی از شروط کافی است [27].
مثال یا سناریوی کاربردی
برای مدیریت اطلاعات دانشجویان، ابتدا یک جدول با دستور CREATE TABLE student شامل ستونهای first_name (از نوع Varchar)، age (از نوع Integer) و is_passed (از نوع Boolean) ایجاد میکنیم. سپس با دستور INSERT INTO دادههای جدید را وارد کرده و با استفاده از SELECT همراه با فیلترهایی مانند WHERE یا ORDER BY (برای مرتبسازی بر اساس معدل یا سن) اطلاعات را استخراج میکنیم.
بیشتر بدانید
ابزار pgAdmin
یک ابزار گرافیکی قدرتمند برای مدیریت بصری پایگاه داده PostgreSQL است که اجازه میدهد بدون نوشتن مستقیم کد، جداول و دادهها را مشاهده و مدیریت کنید.
کامنتگذاری در SQL
برای نوشتن توضیحات در محیط کوئریزنی دیتابیس، از دو خط تیره (--) قبل از متن استفاده میشود.
- IDE Tip
در ابزار pgAdmin، میتوانید با راستکلیک روی جدول و انتخاب View/Edit Data تمامی سطرها را بدون نوشتن کوئری مشاهده کنید.
- Wildcards
علامت % برای جایگزینی هر تعداد کاراکتر و علامت _ (Underline) برای جایگزینی دقیقاً یک کاراکتر در جستجوهای متنی (LIKE) استفاده میشود.
- عملگرهای محاسباتی
در دستور SELECT میتوان عملیات ریاضی مانند جمع یا ضرب را مستقیماً روی ستونهای عددی انجام داد (مثلاً age * 2).
- بررسی مقادیر خالی
برای پیدا کردن فیلدهایی که هیچ مقداری ندارند، از عبارت IS NULL استفاده میشود.
