Takip et

Prisma, SQLite ve Express ile Başlangıç

Prisma, SQLite ve Express ile Başlangıç

Merhaba! Bu makalede, Prisma ORM, SQLite veritabanı ve Express.js framework’ü kullanarak Node.js uygulaması geliştirmenin temel adımlarını adım adım inceleyeceğiz. Özellikle yeni başlayanlar için oldukça faydalı bir rehber olacak bu makalede, örnek kodlar ve açıklamalar ile konuyu pekiştireceğiz. Öncelikle gerekli paketleri kuracağız. Ardından, Prisma şemasını oluşturacak ve veritabanı bağlantımızı yapılandıracağız. Son olarak, Express.js ile basit bir API oluşturacağız.

Gerekli Paketlerin Kurulumu

İlk olarak, projemizi başlatmak için gerekli paketleri kuracağız. Bunun için npm veya yarn kullanabilirsiniz. Projenizi oluşturduktan sonra aşağıdaki komutu çalıştırın:


npm init -y
npm install express prisma @prisma/client sqlite3

Bu komut, Express.js, Prisma ORM ve SQLite sürücüsünü projenize ekleyecektir. Ayrıca, @prisma/client kütüphanesi Prisma’nın client tarafı ile etkileşim kurmamızı sağlayacaktır. Bu kurulumdan sonra, bir sonraki adıma geçebilirsiniz.

Prisma Şemasının Oluşturulması

Prisma, veritabanı şemanızı tanımlamak için bir şema dosyası kullanır. Bu dosyayı prisma/schema.prisma olarak kaydedin ve aşağıdaki kodu ekleyin:


generator client {
  provider = "prisma-client-js"
}

datasource db {
  provider = "sqlite"
  url      = "file:./dev.db"
}

model User {
  id        Int      @id @default(autoincrement())
  email     String   @unique
  name      String?
}

Bu şema, User adında bir model tanımlar. id, email ve name alanlarına sahiptir. @id anotaasyonu, id alanının birincil anahtar olduğunu belirtir. @unique, email alanının benzersiz olmasını sağlar. @default(autoincrement()) ise, id alanının otomatik olarak artırılacağını belirtir. Bu şema dosyasını kaydettikten sonra, aşağıdaki komutu çalıştırarak Prisma client’ını oluşturmalısınız.


npx prisma init

Bu komut, node_modules/.prisma dizininde prisma klasörünü oluşturacaktır. Daha sonra, veritabanımızı oluşturmak için aşağıdaki komutu kullanabiliriz.

Veritabanı Göçleri ve Bağlantı

Şema oluşturulduktan sonra, veritabanını oluşturmak ve göçleri uygulamak için aşağıdaki komutu kullanın:


npx prisma db push

Bu komut, dev.db adında bir SQLite veritabanı dosyası oluşturur ve şemanızı uygular. Şimdi, Express.js uygulamasını oluşturmaya başlayabiliriz. Ancak, önce @prisma/client kütüphanesini kullanarak veritabanına bağlanmamız gerekir.

Express.js ile API Oluşturma

Şimdi, basit bir Express.js uygulaması oluşturacağız. Aşağıdaki kodu index.js dosyasına kaydedin:


const express = require('express');
const { PrismaClient } = require('@prisma/client');

const app = express();
const prisma = new PrismaClient();

app.get('/users', async (req, res) => {
  const users = await prisma.user.findMany();
  res.json(users);
});

app.listen(3000, () => console.log('Sunucu 3000 portunda çalışıyor.'));

Bu kod, /users endpoint’ine bir GET isteği geldiğinde, veritabanındaki tüm kullanıcıları getirir ve JSON formatında döndürür. Sonrasında, uygulamayı başlatmak için aşağıdaki komutu kullanabilirsiniz:


node index.js

Bu uygulamayı geliştirerek daha karmaşık işlemler yapabilir ve veritabanı etkileşimlerini artırabilirsiniz. Örneğin, POST isteği ile kullanıcı ekleme, PUT isteği ile güncelleme veya DELETE isteği ile silme işlemleri ekleyebilirsiniz. Daha detaylı bilgi için Prisma resmi dokümanlarına göz atabilirsiniz. Bu örnek basit bir başlangıç noktasıdır. Daha gelişmiş uygulamalar için, hata yönetimi, doğrulama ve güvenlik gibi konuları da dikkate almanız önemlidir.

Sonuç

Bu makalede, Prisma, SQLite ve Express.js kullanarak basit bir Node.js uygulaması geliştirmenin temel adımlarını inceledik. Umarım bu rehber, Prisma ve diğer teknolojilerle çalışmaya başlamanıza yardımcı olmuştur. Daha fazla bilgi ve örnek için web sitemi ziyaret edebilirsiniz. Herhangi bir sorunuz olursa, bana ulaşmaktan çekinmeyin!

#Etiketler: Prisma, SQLite, Express.js, Node.js, ORM, veritabanı, tutorial, rehber, örnek kodlar, API, web geliştirme


Yorumlar
İçeriği beğendiniz mi? Bir tartışma başlatın veya görüşlerinizi paylaşın.
Yorum Yaz

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

E-posta Bülteni
Yazılım Topluluğuna Katılın
En son güncellemeleri, yaratıcı ipuçlarını ve özel kaynakları doğrudan e-posta kutunuza alın. Tasarım ve inovasyonun geleceğini birlikte keşfedelim.