Data Insert করা (INSERT Query) গাইড ও নোট

Database Tutorials - পিএইচপি মাইএসকিউএল আই (PHP MySQL) - CRUD Operations in PHP এবং MySQL
219

PHP দিয়ে MySQL ডেটাবেসে ডেটা ইনসার্ট (INSERT) করার জন্য INSERT INTO SQL কুয়েরি ব্যবহার করা হয়। PHP এর সাহায্যে MySQL ডেটাবেসে ডেটা ইনসার্ট করতে MySQLi অথবা PDO দুটি পদ্ধতিই ব্যবহার করা যায়। এখানে উভয় পদ্ধতির সাহায্যে ডেটা ইনসার্ট করার পদ্ধতি আলোচনা করা হবে।


1. MySQLi ব্যবহার করে Data Insert করা

1.1 Procedural মেথডে Data Insert করা

<?php
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "myDB";

// MySQLi সংযোগ স্থাপন
$conn = mysqli_connect($servername, $username, $password, $dbname);

// সংযোগ চেক করা
if (!$conn) {
    die("Connection failed: " . mysqli_connect_error());
}

// ইনসার্ট কুয়েরি তৈরি
$sql = "INSERT INTO users (name, email) VALUES ('John Doe', 'john@example.com')";

// কুয়েরি চালানো এবং ফলাফল চেক করা
if (mysqli_query($conn, $sql)) {
    echo "New record created successfully";
} else {
    echo "Error: " . $sql . "<br>" . mysqli_error($conn);
}

// সংযোগ বন্ধ করা
mysqli_close($conn);
?>

এই কোডে, INSERT INTO SQL কুয়েরি ব্যবহার করে users টেবিলে name এবং email কলামে ডেটা ইনসার্ট করা হয়েছে। mysqli_query() ফাংশন দিয়ে কুয়েরি চালানো হয়েছে এবং ফলাফল চেক করা হয়েছে।

1.2 Object-Oriented মেথডে Data Insert করা

<?php
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "myDB";

// MySQLi সংযোগ স্থাপন
$conn = new mysqli($servername, $username, $password, $dbname);

// সংযোগ চেক করা
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
}

// ইনসার্ট কুয়েরি তৈরি
$sql = "INSERT INTO users (name, email) VALUES ('Jane Doe', 'jane@example.com')";

// কুয়েরি চালানো এবং ফলাফল চেক করা
if ($conn->query($sql) === TRUE) {
    echo "New record created successfully";
} else {
    echo "Error: " . $sql . "<br>" . $conn->error;
}

// সংযোগ বন্ধ করা
$conn->close();
?>

এখানে, Object-Oriented পদ্ধতিতে new mysqli() দিয়ে সংযোগ তৈরি করা হয়েছে এবং query() ফাংশন দিয়ে কুয়েরি চালানো হয়েছে।


2. PDO ব্যবহার করে Data Insert করা

2.1 PDO দিয়ে Data Insert করা

<?php
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "myDB";

try {
    // PDO সংযোগ তৈরি করা
    $conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
    
    // PDO Error Mode সেট করা
    $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

    // ইনসার্ট কুয়েরি তৈরি
    $sql = "INSERT INTO users (name, email) VALUES ('Alice Johnson', 'alice@example.com')";

    // কুয়েরি চালানো
    $conn->exec($sql);
    echo "New record created successfully";
}
catch(PDOException $e) {
    echo "Error: " . $e->getMessage();
}

// সংযোগ বন্ধ করা
$conn = null;
?>

এই কোডে, PDO ব্যবহার করে ডেটাবেসে ডেটা ইনসার্ট করা হয়েছে। exec() ফাংশন দিয়ে কুয়েরি চালানো হয়েছে। PDO এর সাথে ত্রুটি ব্যবস্থাপনা করার জন্য PDOException ব্যবহার করা হয়েছে।


3. Prepared Statements ব্যবহার করে Data Insert করা

Prepared Statements SQL ইনজেকশন প্রতিরোধ করতে সহায়তা করে এবং এটি আরও নিরাপদ পদ্ধতি হিসেবে বিবেচিত। নিচে প্রস্তুত বিবৃতি ব্যবহার করে ডেটা ইনসার্টের উদাহরণ দেওয়া হয়েছে।

3.1 MySQLi দিয়ে Prepared Statements ব্যবহার করে Data Insert করা

<?php
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "myDB";

// MySQLi সংযোগ স্থাপন
$conn = mysqli_connect($servername, $username, $password, $dbname);

// সংযোগ চেক করা
if (!$conn) {
    die("Connection failed: " . mysqli_connect_error());
}

// ইনসার্ট কুয়েরি প্রস্তুত করা
$stmt = $conn->prepare("INSERT INTO users (name, email) VALUES (?, ?)");
$stmt->bind_param("ss", $name, $email);

// মান সেট করা এবং কুয়েরি এক্সিকিউট করা
$name = 'Bob Smith';
$email = 'bob@example.com';
$stmt->execute();

echo "New record created successfully";

// প্রস্তুত বিবৃতি বন্ধ করা এবং সংযোগ বন্ধ করা
$stmt->close();
$conn->close();
?>

এখানে, prepare() মেথড ব্যবহার করে SQL কুয়েরি প্রস্তুত করা হয়েছে এবং bind_param() দিয়ে ভ্যালু বাইন্ড করা হয়েছে। execute() ফাংশন দিয়ে কুয়েরি চালানো হয়েছে।

3.2 PDO দিয়ে Prepared Statements ব্যবহার করে Data Insert করা

<?php
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "myDB";

try {
    // PDO সংযোগ তৈরি করা
    $conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
    $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);

    // ইনসার্ট কুয়েরি প্রস্তুত করা
    $stmt = $conn->prepare("INSERT INTO users (name, email) VALUES (:name, :email)");

    // মান বাইন্ড করা
    $stmt->bindParam(':name', $name);
    $stmt->bindParam(':email', $email);

    // মান সেট করা এবং কুয়েরি এক্সিকিউট করা
    $name = 'Charlie Brown';
    $email = 'charlie@example.com';
    $stmt->execute();

    echo "New record created successfully";
}
catch(PDOException $e) {
    echo "Error: " . $e->getMessage();
}

// সংযোগ বন্ধ করা
$conn = null;
?>

এখানে, prepare() মেথড ব্যবহার করে কুয়েরি প্রস্তুত করা হয়েছে এবং bindParam() দিয়ে ডেটা বাইন্ড করা হয়েছে। এরপর execute() ফাংশন দিয়ে কুয়েরি চালানো হয়েছে।


উপসংহার

PHP দিয়ে MySQL ডেটাবেসে ডেটা ইনসার্ট করা বেশ সহজ। আপনি MySQLi অথবা PDO ব্যবহার করে এটি করতে পারেন। Prepared Statements ব্যবহারের মাধ্যমে আপনি SQL ইনজেকশন থেকে সুরক্ষা নিশ্চিত করতে পারেন। MySQLi সাধারণত MySQL ডেটাবেসের জন্য ব্যবহৃত হয়, যেখানে PDO একটি মাল্টি-ডেটাবেস সাপোর্টিং পদ্ধতি যা বিভিন্ন ডেটাবেস সিস্টেমের সাথে কাজ করতে পারে।

Content added By
Promotion

Are you sure to start over?

Loading...