TypeScript में डेटाबेस के साथ कार्य: PostgreSQL और MongoDB

शुरुआती लोगों के लिए ऑनलाइन Python प्रशिक्षक

Python आसानी से सीखें बिना सिद्धांत के बोझ के। स्वचालित जांच के साथ व्यावहारिक कार्य हल करें और ब्राउज़र में सीधे कोड लिखें।

पाठ्यक्रम शुरू करें

TypeScript में डेटाबेस के साथ कार्य का परिचय

TypeScript, JavaScript का एक कड़ाई से टाइप किया गया विस्तार है, जो स्थैतिक टाइपिंग और आधुनिक भाषा सुविधाएँ जोड़ता है। TypeScript पर सर्वर-साइड एप्लिकेशन विकसित करते समय, अक्सर डेटाबेस के साथ बातचीत करने की आवश्यकता उत्पन्न होती है। दो सबसे लोकप्रिय समाधान हैं रिलेशनल DBMS PostgreSQL और डॉक्यूमेंट-ओरिएंटेड MongoDB। इस लेख में, हम देखेंगे कि सिद्ध लाइब्रेरी और सर्वोत्तम अभ्यासों का उपयोग करके TypeScript में दोनों डेटाबेस के साथ प्रभावी ढंग से कैसे काम किया जाए।



पर्यावरण सेटअप और निर्भरताएँ स्थापित करना

शुरू करने से पहले, सुनिश्चित करें कि आपके पास Node.js और npm स्थापित हैं। एक नया प्रोजेक्ट बनाएँ और आवश्यक पैकेज स्थापित करें:

mkdir typescript-db-examplecd typescript-db-examplenpm init -ynpm install typescript ts-node @types/node --save-devnpx tsc --init

PostgreSQL के साथ काम करने के लिए, हम TypeORM का उपयोग करेंगे - TypeScript समर्थन वाला एक शक्तिशाली ORM। MongoDB के लिए, हम Mongoose का उपयोग करेंगे।

npm install typeorm reflect-metadata pgnpm install mongoose


TypeORM के माध्यम से PostgreSQL के साथ कार्य

PostgreSQL से कनेक्शन सेटअप

TypeORM डेकोरेटर और एक्टिव रिकॉर्ड का समर्थन करता है। कॉन्फ़िगरेशन के लिए एक फ़ाइल data-source.ts बनाएँ:

import { DataSource } from "typeorm";

export const AppDataSource = new DataSource({ type: "postgres", host: "localhost", port: 5432, username: "your_username", password: "your_password", database: "test_db", synchronize: true, logging: false, entities: ["src/entity/**/*.ts"], migrations: [], subscribers: [],});


एंटिटी (Entity) बनाना

डेकोरेटर का उपयोग करके एक उपयोगकर्ता मॉडल परिभाषित करें:

import { Entity, PrimaryGeneratedColumn, Column } from "typeorm";

@Entity()export class User { @PrimaryGeneratedColumn() id: number;

@Column() firstName: string;

@Column() lastName: string;

@Column({ unique: true }) email: string;

@Column({ default: true }) isActive: boolean;}


PostgreSQL के साथ CRUD संचालन

डेटाबेस के साथ बुनियादी संचालन करें:

import { AppDataSource } from "./data-source";import { User } from "./entity/User";

async function main() { await AppDataSource.initialize(); const userRepository = AppDataSource.getRepository(User);

// CREATE const newUser = userRepository.create({ firstName: "इवान", lastName: "पेत्रोव", email: "ivan@example.com" }); await userRepository.save(newUser);

// READ const users = await userRepository.find(); console.log("सभी उपयोगकर्ता:", users);

// UPDATE const userToUpdate = await userRepository.findOneBy({ id: 1 }); if (userToUpdate) { userToUpdate.isActive = false; await userRepository.save(userToUpdate); }

// DELETE await userRepository.delete({ id: 1 });}

main().catch(console.error);


Mongoose के माध्यम से MongoDB के साथ कार्य

MongoDB से कनेक्शन

Mongoose MongoDB के लिए सुविधाजनक स्कीमा और सत्यापन प्रदान करता है। कनेक्शन सेटअप करें:

import mongoose, { Schema, Document, Model } from "mongoose";

const MONGO_URI = "mongodb://localhost:27017/test";

mongoose.connect(MONGO_URI) .then(() => console.log("MongoDB से कनेक्ट हुआ")) .catch(err => console.error("कनेक्शन त्रुटि:", err));


स्कीमा और मॉडल परिभाषित करना

TypeScript के लिए एक इंटरफ़ेस और Mongoose स्कीमा बनाएँ:

// TypeScript के लिए इंटरफ़ेसinterface IUser extends Document {    firstName: string;    lastName: string;    email: string;    createdAt: Date;}

// Mongoose स्कीमाconst userSchema = new Schema({ firstName: { type: String, required: true }, lastName: { type: Strin

ब्लॉग

पुस्तक अनुशंसाएँ