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

JSP-এ SQL SELECT স্টেটমেন্ট কীভাবে এক্সিকিউট করবেন?


<sql:query> ট্যাগটি একটি SQL SELECT স্টেটমেন্ট এক্সিকিউট করে এবং ফলাফলকে একটি স্কোপড ভেরিয়েবলে সংরক্ষণ করে।

অ্যাট্রিবিউট

<sql:query> ট্যাগটির নিম্নলিখিত অ্যাট্রিবিউটগুলো রয়েছে:

অ্যাট্রিবিউট বিবরণ আবশ্যক ডিফল্ট
sql এক্সিকিউট করার SQL কমান্ড (ResultSet রিটার্ন করা উচিত) নয় বডি
dataSource ব্যবহার 할 ডেটাবেস কানেকশন (ডিফল্ট ওভাররাইড করে) নয় ডিফল্ট ডেটাবেস
maxRows ভেরিয়েবলে সংরক্ষণ করার সর্বোচ্চ ফলাফল সংখ্যা নয় সীমাহীন
startRow ফলাফলে যে সারি থেকে রেকর্ডিং শুরু হবে তার নম্বর নয় ০
var ডেটাবেসকে রিপ্রেজেন্ট করার ভেরিয়েবল নাম নয় ডিফল্ট সেট
scope ডেটাবেস থেকে ফলাফল এক্সপোজ করার ভেরিয়েবলের স্কোপ নয় Page

উদাহরণ

বেসিক কনসেপ্ট বোঝার জন্য, TEST ডেটাবেসে একটি Employees টেবিল তৈরি করে সেটাতে কিছু রেকর্ড डालি:

স্টেপ ১

একটি Command Prompt খুলুন এবং ইনস্টলেশন ডিরেক্টরিতে যান:

C:\> C:\>cd Program Files\MySQL\bin C:\Program Files\MySQL\bin>

স্টেপ ২

ডেটাবেসে লগইন করুন:

C:\Program Files\MySQL\bin>mysql -u root -p Enter password: ******** mysql>

স্টেপ ৩

TEST ডেটাবেসে Employee টেবিল তৈরি করুন:

mysql> use TEST;    mysql> create table Employees (       id int not null,       age int not null,       first varchar (255),       last varchar (255)    );    Query OK, 0 rows affected (0.08 sec) mysql>

ডেটা রেকর্ড তৈরি

Employee টেবিলে কিছু রেকর্ড যোগ করুন:

mysql> INSERT INTO Employees VALUES (100, 18, 'Zara', 'Ali'); Query OK, 1 row affected (0.05 sec) mysql> INSERT INTO Employees VALUES (101, 25, 'Mahnaz', 'Fatma'); Query OK, 1 row affected (0.00 sec) mysql> INSERT INTO Employees VALUES (102, 30, 'Zaid', 'Khan'); Query OK, 1 row affected (0.00 sec) mysql> INSERT INTO Employees VALUES (103, 28, 'Sumit', 'Mittal'); Query OK, 1 row affected (0.00 sec) mysql>

এখন একটি JSP তৈরি করি যা <sql:query> ব্যবহার করে SQL SELECT স্টেটমেন্ট এক্সিকিউট করবে:

<%@ page import = "java.io.*,java.util.*,java.sql.*"%> 
<%@ page import = "javax.servlet.http.*,javax.servlet.*" %> 
<%@ taglib uri = "https://java.sun.com/jsp/jstl/core" prefix = "c"%> 
<%@ taglib uri = "https://java.sun.com/jsp/jstl/sql" prefix = "sql"%> 
<html> 
     <head> 
          <title>JSTL sql:query Tag</title> 
     </head> 
     <body> 
        <sql:setDataSource var = "snapshot" driver = "com.mysql.jdbc.Driver" 
           url = "jdbc:mysql://localhost/TEST" 
           user = "root" password = "pass123"/> 
           <sql:query dataSource = "${snapshot}" var = "result"> 
           SELECT * from Employees; 
        </sql:query> 
        <table border = "1" width = "100%"> 
           <tr> 
              <th>Emp ID</th> 
              <th>First Name</th> 
              <th>Last Name</th> 
              <th>Age</th> 
           </tr> 
           <c:forEach var = "row" items = "${result.rows}"> 
              <tr> 
                 <td> <c:out value = "${row.id}"/></td> 
                 <td> <c:out value = "${row.first}"/></td> 
                 <td> <c:out value = "${row.last}"/></td> 
                 <td> <c:out value = "${row.age}"/></td> 
              </tr> 
           </c:forEach> 
        </table> 
     </body> 
</html>

উপরোক্ত JSP অ্যাক্সেস করলে নিম্নলিখিত ফলাফল দেখা যাবে:

+-------------+----------------+-----------------+-----------------+ | Emp ID      | First Name     | Last Name       | Age | +-------------+----------------+-----------------+-----------------+ | 100         | Zara           | Ali             | 18              | | 101         | Mahnaz         | Fatma           | 25              | | 102         | Zaid           | Khan            | 30              | | 103         | Sumit          | Mittal          | 28              | +-------------+----------------+-----------------+-----------------+

  1. JSP-এ DELETE SQL কীভাবে এক্সিকিউট করবেন?

  2. JSP-এ UPDATE SQL কীভাবে এক্সিকিউট করবেন?

  3. JSP-এ SQL আপডেট কোয়েরি কীভাবে এক্সিকিউট করবেন?

  4. MS SQL Server-এ ডেটাবেস নির্বাচন