Rust में डेटाबेस के साथ काम करना: शुरुआती लोगों के लिए PostgreSQL और MongoDB

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

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

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

परिचय: क्यों Rust और डेटाबेस एक आदर्श जोड़ी हैं

Rust एक आधुनिक सिस्टम प्रोग्रामिंग भाषा है, जो अपनी प्रदर्शन क्षमता, मेमोरी सुरक्षा और शून्य-लागत अमूर्तता के कारण तेजी से लोकप्रियता प्राप्त कर रही है। Python, JavaScript या Go की दुनिया से आने वाले कई डेवलपर्स सवाल पूछते हैं: Rust में डेटाबेस के साथ कैसे काम करें? इसका उत्तर सरल है: Rust रिलेशनल (PostgreSQL) और डॉक्यूमेंट-ओरिएंटेड (MongoDB) दोनों डेटाबेस के साथ काम करने के लिए शक्तिशाली और सुरक्षित ड्राइवर प्रदान करता है।

इस लेख में हम Rust में PostgreSQL और MongoDB के साथ काम करने की मूल बातें समझेंगे। आप सीखेंगे कि प्रोजेक्ट कैसे सेट करें, डेटाबेस से कैसे कनेक्ट करें और बुनियादी CRUD-ऑपरेशन कैसे करें। यह लेख शुरुआती लोगों के लिए है, इसलिए हम सरल और समझने योग्य उदाहरणों का उपयोग करेंगे।



1. प्रोजेक्ट सेटअप और निर्भरताएँ स्थापित करना

शुरू करने से पहले सुनिश्चित करें कि आपके पास Rust और Cargo स्थापित हैं। एक नया प्रोजेक्ट बनाएँ:

cargo new rust_db_examplecd rust_db_example


फ़ाइल Cargo.toml खोलें और आवश्यक निर्भरताएँ जोड़ें। PostgreSQL के साथ काम करने के लिए हम क्रेट tokio-postgres (एसिंक्रोनस ड्राइवर) और डेटा सीरियलाइज़ेशन के लिए serde का उपयोग करेंगे। MongoDB के लिए — आधिकारिक ड्राइवर mongodb।

[dependencies]tokio = { version = "1", features = ["full"] }tokio-postgres = "0.7"serde = { version = "1", features = ["derive"] }serde_json = "1"mongodb = "2.8"


ध्यान दें: हम tokio को एसिंक्रोनस रनटाइम के रूप में उपयोग कर रहे हैं, क्योंकि दोनों ड्राइवर एसिंक्रोनस रूप से काम करते हैं। यह आधुनिक Rust अनुप्रयोगों के लिए मानक अभ्यास है।



2. Rust में PostgreSQL के साथ काम करना

PostgreSQL एक शक्तिशाली रिलेशनल डेटाबेस है। Rust में इसके साथ काम करने के लिए हम क्रेट tokio-postgres का उपयोग करेंगे। यह SQL क्वेरी निष्पादित करने के लिए एक एसिंक्रोनस इंटरफ़ेस प्रदान करता है।



2.1 डेटाबेस से कनेक्शन

स्थानीय PostgreSQL डेटाबेस से कनेक्ट करने के लिए एक फ़ंक्शन बनाएँ। सुनिश्चित करें कि आपका PostgreSQL सर्वर चल रहा है और एक डेटाबेस (जैसे, test_db) बनाया गया है:

use tokio_postgres::{NoTls, Error};

#[tokio::main]async fn main() -> Result<(), Error> { // कनेक्शन स्ट्रिंग: postgresql://user:password@localhost/dbname let (client, connection) = tokio_postgres::connect( "host=localhost user=postgres dbname=test_db", NoTls, ).await?;

// कनेक्शन को बैकग्राउंड में चलाएँ tokio::spawn(async move { if let Err(e) = connection.await { eprintln!("कनेक्शन त्रुटि: {}", e); } });

println!("PostgreSQL से कनेक्शन स्थापित हुआ!"); Ok(())}


2.2 तालिका बनाना और डेटा सम्मिलित करना

अब एक users तालिका बनाएँ और कुछ रिकॉर्ड सम्मिलित करें:

// तालिका बनाएँclient    .execute(        "CREATE TABLE IF NOT EXISTS users (            id SERIAL PRIMARY KEY,            name VARCHAR(100) NOT NULL,            email VARCHAR(150) UNIQUE NOT NULL        )",        &[],    )    .await?;

// डेटा सम्मिलित करेंlet name = "Alice";let email = "alice@example.com";client .execute( "INSERT INTO users (name, email) VALUES ($1, $2)", &[&name, &email], ) .await?;

println!("उपयोगकर्ता {} जोड़ा गया!", name);


2.3 डेटा पढ़ना और अद्यतन करना

SELECT क्वेरी निष्पादित करें और रिकॉर्ड अपडेट करें:

// डेटा पढ़नाlet rows = client    .query("SELECT id, name, email FROM users", &[])    .await?;

for row in rows { let id: i32 = row.get(0); let name: &str = row.get(1); let email: &str = row.get(2); println!("ID: {}, नाम: {}, ईमेल: {}", id, name, email);}

// रिकॉर्ड अपडेट करनाclient .execute( "UPDATE users SET email = $1 WHERE name = $2", &[&"alice_new

ब्लॉग

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