কম্পিউটার টিউটোরিয়াল

Java-এ MySQL LIKE কোয়ারিতে সঠিক কোটেশন (Quotes) ব্যবহার করা

Java-এ JDBC ব্যবহার করে MySQL LIKE কোয়ারিতে সার্চ ভেরিয়েবল পাস করার সময় সিংল কোট (') এবং কনক্যাটেনেশন সঠিকভাবে হ্যান্ডেল করা খুব গুরুত্বপূর্ণ, অন্যথায় সিনট্যাক্স এরর বা SQL ইনজেকশন হয়।

সঠিক সিনট্যাক্স

String sqlQuery = "SELECT * FROM yourTableName WHERE yourColumnName LIKE '%" + searchVariable + "%'";

ব্রেকডাউন: "SELECT ... LIKE '%" + searchVariable + "%'" → ফাইনাল: LIKE '%Smith%'

টেবিল ও ডেটা

mysql> CREATE TABLE demo19 (
    -> id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
    -> name VARCHAR(50)
    -> );
mysql> INSERT INTO demo19 (name) VALUES 
('John Smith'), ('David Miller'), ('Adam Smith'), ('Chris Brown');

জাভা কোড (সঠিক কোটেশন সহ)

import java.sql.*;

public class RemoveJavaQueryError {
    public static void main(String[] args) {
        String searchKeyWord = "Smith";
        try (Connection con = DriverManager.getConnection(
                "jdbc:mysql://localhost:3306/sampledatabase", "root", "123456");
             Statement stmt = con.createStatement()) {
            
            Class.forName("com.mysql.cj.jdbc.Driver");
            
            String sqlQuery = "SELECT * FROM demo19 WHERE name LIKE '%" + searchKeyWord + "%'";
            ResultSet rs = stmt.executeQuery(sqlQuery);
            while (rs.next()) {
                System.out.println(rs.getString("name"));
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

আউটপুট

John Smith
Adam Smith

সুরক্ষা টিপস: প্রোডাকশনে PreparedStatement ব্যবহার করুন: stmt.setString(1, "%" + searchKeyWord + "%") — এটি SQL ইনজেকশন রোধ করে।

  1. MySQL-এ LIKE ওয়াইল্ডকার্ড দিয়ে কেস-ইনসেনসিটিভ সার্চ

  2. Java ব্যবহার করে MySQL ডেটাবেসে ডেটা আপডেট করা

  3. Java ব্যবহার করে MySQL ডেটাবেস থেকে ডেটা ডিলিট করা

  4. Java-এ MySQL PreparedStatement দিয়ে SELECT কোয়েরি চালানো