Middle+
ORM kullanmadan veritabanına SQL sorgusunu nasıl tasarlardınız?
sobes.tech yapay zeka
AI'dan gelen yanıt
users tablosundan veri almak için, is_active alanı true ve role 'admin' olan:
SELECT id, username, email
FROM users
WHERE is_active = TRUE AND role = 'admin';
products tablosuna yeni bir kayıt eklemek için:
INSERT INTO products (name, price, category_id)
VALUES ('New Product', 19.99, 10);
orders tablosundaki kaydı güncellemek ve id = 100 olan siparişin durumunu 'shipped' yapmak için:
UPDATE orders
SET status = 'shipped'
WHERE id = 100;
comments tablosundan id ile kayıt silmek için:
DELETE FROM comments
WHERE id = 500;
users ve orders tablolarını user_id üzerinden temel birleştirme:
SELECT u.username, o.order_date, o.total_amount
FROM users AS u
JOIN orders AS o ON u.id = o.user_id;
Tasarım yaparken dikkate alınması gerekenler:
- Güvenlik: SQL enjeksiyonlarını önlemek için parametreli sorgular kullanın.
- Performans: İndeksler kullanarak sorguları optimize edin,
SELECT *kullanmaktan kaçının ve yürütme planlarını kontrol edin. - Okunabilirlik: Sorguları biçimlendirin, tablo ve alan takma adları kullanın.
- Test: Farklı senaryolarda ve veri hacimlerinde sorguları test edin.
Parametreli sorgu örneği (kavramsal, uygulama dili ve sürücüsüne bağlı olarak değişir):
// ID ile kullanıcı sorgulama örneği
SELECT id, username FROM users WHERE id = ?;