English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

الشعار <sql:param>

مكتبة العلامات القياسية في JSP

<sql:param> يتم استخدامه مع <sql:query> و <sql:update> لتحديد علامة استبدال القيمة. إذا كان القيمة null، يتم تعيين العلامة الاستبدال إلى SQL NULL.

تنسيق الجملة

<sql:param value="<string>"/>

خصائص

الخصائص التالية لـ <sql:param> هي:

خصائصوصفهل هو ضروريالقيمة الافتراضية
                value                القيم التي يجب تعيينها للمعلمات                لا                جسم

عرض مثال

أولاً، تحتاج إلى إنشاء جدول Employees في قاعدة البيانات TEST، ثم إضافة بعض السجلات إلى الجدول، وفقًا للخطوات التالية:

    الخطوة 1:

افتح CMD، قم بتحويل الدليل إلى دليل التثبيت:

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

    الخطوة 2:

تسجيل الدخول إلى قاعدة البيانات:

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

    الخطوة 3:

قم بإنشاء جدول Employees في قاعدة البيانات TEST:

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>

    إنشاء سجلات البيانات:

آخرًا، قم بإنشاء بعض السجلات في جدول Employees:

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:update> لتنفيذ جملة SQL DELETE لإزالة السجل الذي يحتوي على Id=103:

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%@ page import="java.io.*,java.util.*,java.sql.*"%>
<%@ page import="javax.servlet.http.*,javax.servlet.*" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/sql" prefix="sql"%>
<html>
<head>
<title>JSTL sql:param Tag</title>
</head>
<body>
 
<sql:setDataSource var="snapshot" driver="com.mysql.jdbc.Driver"
     url="jdbc:mysql://localhost/TEST"
     user="root" password="pass123"/>
<c:set var="empId" value="103"/>
<sql:update dataSource="${snapshot}" var="count">
  DELETE FROM Employees WHERE Id = ?
  <sql:param value="${empId}"/>
</sql:update>
<sql:query dataSource="${snapshot}" var="result">
   SELECT * from Employees;
</sql:query>
 
<table border="1" width="100%">
<tr>
<th>معرف الموظف</th>
<th>الاسم الأول</th>
<th>اسم العائلة</th>
<th>العمر</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>

نتائج التنفيذ كالتالي:

استخدام علامة <sql:param> في جملة UPDATE وSELECT مشابه لاستخدامها في DELETE.

مكتبة العلامات القياسية في JSP