۲۷. مبانی SQL
با این راهنمای دکتر آنجلا، SQL را یاد بگیرید.
SQL دادهها را در جداول مدیریت میکند. شما از عملیات CRUD برای مدیریت اطلاعات استفاده میکنید.
CRUD مخفف موارد زیر است:
- ایجاد (INSERT)
- خواندن (SELECT)
- بهروزرسانی (UPDATE)
- حذف (DELETE)
۱. مدیریت جداول
از CREATE TABLE برای ساخت یک جدول جدید استفاده کنید.
از یک کلید اصلی (Primary Key) برای شناسایی منحصربهفرد هر ردیف استفاده کنید.
مثال:
CREATE TABLE products (
id INT NOT NULL,
name STRING,
price MONEY,
PRIMARY KEY (id)
);
از INSERT برای افزودن داده استفاده کنید.
برای افزودن داده به تمام ستونها:
INSERT INTO products VALUES (1, 'Pen', 1.20);
برای افزودن داده به ستونهای خاص:
INSERT INTO products (id, name) VALUES (2, 'Pencil');
۲. خواندن دادهها
از SELECT برای مشاهده دادههای خود استفاده کنید.
برای مشاهده همه چیز:
SELECT * FROM products;
از WHERE برای فیلتر کردن نتایج استفاده کنید.
برای مشاهده یک مورد:
SELECT * FROM products WHERE id = 1;
۳. تغییر دادهها و جداول
از UPDATE برای تغییر مقادیر موجود استفاده کنید.
دستور SET مقدار جدید را تعیین میکند.
دستور WHERE ردیف مورد نظر را انتخاب میکند.
مثال:
UPDATE products SET price = 1.00 WHERE id = 1;
از ALTER TABLE برای افزودن یک ستون استفاده کنید.
مثال:
ALTER TABLE products ADD stock INT;
۴. حذف دادهها
از DELETE برای حذف ردیفها استفاده کنید.
مثال:
DELETE FROM products WHERE id = 2;
نکته: همیشه از عبارت WHERE استفاده کنید. اگر آن را نادیده بگیرید، تمام ردیفهای جدول را حذف خواهید کرد.
۵. روابط و Joinها
کلیدهای خارجی (Foreign Keys) دو جدول را به هم متصل میکنند. این کار باعث سازماندهی و دقت دادههای شما میشود.
از INNER JOIN برای ترکیب دادهها از جداول مختلف استفاده کنید. این دستور فقط ردیفهایی را نشان میدهد که دادهها در هر دو جدول مطابقت داشته باشند.
مثال:
SELECT orders.order_number, customers.first_name
FROM orders
INNER JOIN customers ON orders.customer_id = customers.id;
منابع:
- SQL Tutorial: https://www.w3schools.com/sql/
- SQL Data Types: https://www.w3schools.com/sql/sql_datatypes.asp
- Primary Keys: https://www.w3schools.com/sql/sql_primarykey.asp
- Foreign Keys: https://www.w3schools.com/sql/sql_foreignkey.asp
- Inner Joins: https://www.w3schools.com/sql/sql_join_inner.asp
- Online Playground: https://sqliteonline.com/