Middle+
როგორ დაგეგმავდით SQL-საკითხს მონაცემთა ბაზისთვის ORM-ის გამოყენების გარეშე?
sobes.tech AI
პასუხი AI-სგან
users ცხრილიდან მონაცემების ამოღება, სადაც is_active ველი არის true და role არის 'admin':
SELECT id, username, email
FROM users
WHERE is_active = TRUE AND role = 'admin';
ახალი ჩანაწერის დამატება products ცხრილში:
INSERT INTO products (name, price, category_id)
VALUES ('New Product', 19.99, 10);
შენახული ჩანაწერის განახლება orders ცხრილში, სტატუსის მითითება 'shipped' id = 100 შეკვეთისთვის:
UPDATE orders
SET status = 'shipped'
WHERE id = 100;
ჩანაწერის წაშლა comments ცხრილიდან id-ით:
DELETE FROM comments
WHERE id = 500;
ძირითადი შეჯერება users და orders ცხრილებს შორის user_id-ით:
SELECT u.username, o.order_date, o.total_amount
FROM users AS u
JOIN orders AS o ON u.id = o.user_id;
დიზაინში მნიშვნელოვანია:
- უსაფრთხოება: გამოიყენეთ პარამეტრიზებული შეკითხვები SQL ინექციების თავიდან ასაცილებლად.
- მოქმედება: ოპტიმიზაცია შეკითხვების ინდექსების გამოყენებით,
SELECT *-ის თავიდან აცილება და შესრულების გეგმების შემოწმება. - საკითხი: შეკითხვების ფორმატირება, ტაბლეტებისა და ველების ალისების გამოყენება.
- ტესტირება: შეკითხვების სხვადასხვა სცენარებში და მონაცემთა მოცულობებში ტესტირება.
პარამეტრიზებული შეკითხვის მაგალითი (კონცეპტუალური, განხორციელება დამოკიდებულია ენისა და დრაივერის მიხედვით):
// მომხმარებლის მონაცემების მიღება ID-ით
SELECT id, username FROM users WHERE id = ?;