Sequelize ORM ile Query Kullanımı Rehberi


Sequelize ORM ile Query Kullanımı Rehberi

Node.js projelerinde veritabanı işlemlerini kolaylaştıran Sequelize ORM, hem ilişkisel hem de sorgulama bazlı işlemler için oldukça kullanışlıdır. Sequelize, kodunuzu mümkün olduğunca sade ve okunabilir tutarken güçlü sorgular oluşturmanıza olanak tanır. Bu yazıda, "Sequelize ORM ile Query Kullanımı" başlığındaki anahtar konuları adım adım ele alacağız.

Sequelize ORM ile Sorgu Yazma Temelleri

Sequelize ORM ile query oluştururken iki ana yolu tercih edebilirsiniz: Model fonksiyonlarını (ör. findAll, findOne, update, destroy) veya doğrudan SQL sorgusu yazma imkânı sunan sequelize.query() yöntemini kullanabilirsiniz. Her iki yöntemin de avantajları ve kullanım alanları bulunur.

Model Fonksiyonlarıyla Query Yazmak

En sık tercih edilen yöntem, modeller üzerinden sorgular oluşturmak ve sonuçları doğrudan JavaScript nesneleri olarak kullanmaktır. Basit bir örnek:

// User modelinden tüm verileri çekmek:
const users = await User.findAll();
console.log(users);

Koşullu sorgular için where anahtarını kullanabilirsiniz:

// isActive olan kullanıcıları çekmek:
const activeUsers = await User.findAll({
  where: { isActive: true }
});
console.log(activeUsers);

sequelize.query() ile Raw SQL Query Kullanımı

Daha karmaşık sorgular veya model sınırlarını aşan özel query'ler için sequelize.query() fonksiyonu devreye girer. Bu fonksiyon size ham SQL sorguları çalıştırma esnekliği sunar:

// Ham SQL kullanarak sorgu çalıştırmak:
const [results, metadata] = await sequelize.query(
  "SELECT * FROM Users WHERE isActive = :isActive",
  {
    replacements: { isActive: true },
    type: sequelize.QueryTypes.SELECT
  }
);
console.log(results);

Not: Query ile parametre geçmek için replacements kullanılarak SQL enjeksiyonu riski engellenir.

Sonuç: Sequelize ORM ile Query Kullanımı

"Sequelize ORM ile Query Kullanımı", hem standart ORM fonksiyonlarıyla hem de ihtiyaca göre raw SQL ile veritabanı üzerinde etkili işlemler gerçekleştirmek isteyen geliştiriciler için önemlidir. Sequelize ile query yazımını öğrendikten sonra kodunuzun yönetimi oldukça kolaylaşır ve uygulamalarınız daha güvenli, sürdürülebilir hâle gelir. Kendi projelerinizde bu teknikleri rahatlıkla uygulayabilirsiniz.