Expressjs ile MSSQL Kullanımı

Selim KURT
2 min readMar 8, 2024

--

Expressjs’in gücünü ve esnekliğini göstermek amacıyla MSSQL modülü kullanılarak Microsoft SQL Server veritabanına bağlanıp yeni kayıt ekleyeceğiz. MSSQL modülü, Nodejs tarafından desteklenen birçok veritabanı sistemi arasında öne çıkan Microsoft SQL Server veritabanına bağlanmak için kullanılan bir modüldür.
Kurulum aşamasına başlayabiliriz. Öncelikle mssql modülünün kurulumunu yapıyoruz.

npm install mssql

Mssql paketinin kurulumu yaptıktan sonra gerekli TABLO’ları oluşturmak için aşağıdaki komutu kullanabiliriz..

CREATE TABLE posts (
id INT IDENTITY(1,1) PRIMARY KEY,
title NVARCHAR(255),
content TEXT,
created_at DATETIME DEFAULT GETDATE()
);

MSSQL sunucusuna bağlanmak ve gerekli API Routeları oluşturmaya başlayabiliriz.

const express = require('express');
const bodyParser = require('body-parser');
const mssql = require('mssql');

// Express uygulamasını oluştur
const app = express();

// JSON gönderilerini işlemek için bodyParser kullan
app.use(bodyParser.json());

// MSSQL bağlantı bilgileri
const config = {
user: 'username',
password: 'password',
server: 'localhost',
database: 'blogDB',
options: {
trustedConnection: true
}
};

// MSSQL bağlantısını oluştur
mssql.connect(config, err => {
if (err) {
console.error('Veritabanına bağlanırken hata oluştu:', err);
return;
}
console.log('Veritabanına başarıyla bağlanıldı.');
});

// Tüm gönderileri almak için endpoint'i
app.get('/posts', (req, res) => {
const request = new mssql.Request();
request.query('SELECT * FROM posts', (err, result) => {
if (err) {
console.error('Gönderileri alırken hata oluştu:', err);
res.status(500).send('Gönderiler alınırken bir hata oluştu.');
return;
}
res.json(result.recordset);
});
});

// Yeni gönderi oluşturmak için endpoint'i
app.post('/posts', (req, res) => {
const { title, content } = req.body;
const request = new mssql.Request();
request.query(`INSERT INTO posts (title, content) VALUES ('${title}', '${content}')`, (err, result) => {
if (err) {
console.error('Gönderi oluşturulurken hata oluştu:', err);
res.status(500).send('Gönderi oluşturulurken bir hata oluştu.');
return;
}
res.send('Gönderi başarıyla oluşturuldu.');
});
});

// Uygulamayı belirtilen portta dinle
const port = 3000;
app.listen(port, () => {
console.log(`Uygulama ${port} numaralı portta çalışıyor.`);
});

Yukarıdaki örnekte , Expressjs ile MSSQL veritabanı arasında temel etkileşim sağlar. ‘/posts’ endpointleri üzerinden tüm gönderileri alabilir ve yeni bir gönderi oluşturabilirsiniz. Güvenlik ve performans açısından bu kodu geliştirmemiz gerekebilir.

Okuduğunuz için teşekkürler

Her zaman gelişmek için yer olduğunu anlıyorum. Lütfen düşüncelerinizi paylaşmaktan çekinmeyin.

--

--

Selim KURT
Selim KURT

Written by Selim KURT

Software Developer - Mobile & Web Developer #react #reactnative #nextjs #frontend #digitaltransformation #javascript

No responses yet