JSP中操作数据库的常用SQL标签用法总结

<sql:setDataSource>
标签设定数据源

语法结构:

复制代码 代码如下:

<sql:setDataSource url="jdbcUrl" driver="driverClassName" user="userName" password="password" [var = "varName"][scope="{page | request | session | application}"] />

<sql:update>
标签进行增删改的操作

第一种格式:

复制代码 代码如下:

<sql:update sql="sqlUpdate" [var="varName"] [scope="{page|request|session|application}"][dataSource="dataSource"] />

eg:

<%@ page contentType="text/html;charset=GBK"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/sql" prefix="sql"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>测试标签</title>
</head>
<sql:setDataSource driver="com.microsoft.sqlserver.jdbc.SQLServerDriver"
 user="liky" password="redhat"
 url="jdbc:sqlserver://localhost:1433;DatabaseName=csu" var="db" />
<body>
<!-- 这里使用update标签创建一个表 -->
<sql:transaction dataSource="${db}">
<sql:update var="update" scope="page">
 if exists(select 1 from sysobjects where name='tmp')
 drop table tmp

 create table tmp
 (
 id int identity(1,1) primary key,
 name varchar(20),
 pass varchar(20)
 )
</sql:update>
</sql:transaction>
<!-- 这里使用update标签修改表的结构,添加一个列 -->
<sql:transaction dataSource="${db}">
<sql:update var="update" scope="page">
 alter table tmp add age tinyint
</sql:update>
</sql:transaction>
<br>
</body>
</html>

第二种格式是将SQL语句作为本体内容

<%@page language="java" contentType="text/html;charset=gb2312"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/sql" prefix="sql" %>
<!DOCTYPE html>
<html>
  <head>
    <title>Update标签添加数据</title>
  </head>
  <body>
    <%-- 指定数据库链接URL,JDBC驱动,用户名和密码 --%>
    <sql:setDataSource url="jdbc:mysql://localhost:3306/javaweb" driver="com.mysql.jdbc.Driver"
        user="root" password="zhangda890126;;"/>
    <%-- 通过update标签添加数据 --%>
    <sql:update>
      INSERT INTO user(userid,username,password) VALUES(null,"admin1","root1");
    </sql:update>
  </body>
</html>

<sql:query>标签
用来查询数据库中的数据
第一种格式:

复制代码 代码如下:

<sql:query sql="sqlQuery" [var="varName"] [scope="{page|request|session|application}"][dataSource="dataSource"]maxRows="" startRow="startRow" />

第二种格式是将SQL语句作为本体内容

<%@page language="java" contentType="text/html;charset=gb2312"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/sql" prefix="sql" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<!DOCTYPE html>
<html>
  <head>
    <title>Query标签的使用</title>
  </head>
  <body>
    <%-- 指定数据库链接URL,JDBC驱动,用户名和密码 --%>
    <sql:setDataSource url="jdbc:mysql://localhost:3306/javaweb" driver="com.mysql.jdbc.Driver"
        user="root" password="zhangda890126;;"/>
    <%-- 通过update标签添加数据 --%>
    <sql:query var="result">
      SELECT * FROM user
    </sql:query>
    <%-- 显示所有的数据 --%>
    <center>
      <h3>查询所有的数据</h3>
      <table border="1">
        <tr>
          <td>userID</td>
          <td>userName</td>
          <td>password</td>
        </tr>
        <%-- 使用foreach循环输出所有的值 --%>
        <c:forEach items="${result.rows}" var = "row">
          <tr>
            <td>${row.userid}</td>
            <td>${row.username}</td>
            <td>${row.password}</td>
          </tr>
        </c:forEach>
      </table>
    </center>
  </body>
</html>

<sql:param>标签和<sql:dateParam>标签
<sql:param>有两种格式即:带有本体内容和不带本体内容的

不带本体内容的格式为

<sql:param value="value" />

带本体内容的格式为

<sql:param>

本体内容

</sql:param>

<sql:dateParam>标签的格式为:

<sql:dateParam value="value" [type="{timestamp|time|date}"] />

如果参数与时间和日期有关的话就使用<sql:dateParam>标签

<sql:transaction>标签
提供存取数据库时的一种安全机制(事物处理安全机制)

格式为:

<sql:transaction [dataSource="dataSource"] [isolation="read_committed|read_uncomited|repeatabl_read|serializable"]>

<sql:update> or <sql:query>

</sql:transaction>
时间: 2016-04-13

jsp读取数据库实现分页技术简析

这篇文章介绍的是用javabean和jsp页面来实现数据的分页显示,例子中所使用的数据库是Mysql. 1.先看javabean 类名: databaseBean.java: 以下为databaseBean.java的代码: 复制代码 代码如下: package database_basic; import java.sql.*; import java.util.*; public class databaseBean { //这是默认的数据库连接方式 private String DBLoc

JSP连接Access数据库

一.建立数据库及ODBC数据源 1.建立jcc.mdb数据库及user表      2.添加测试数据 3.配置ODBC数据源 二.在<%wwwroot%>/下,新建Access数据库连接文件Select.jsp Select.jsp源码如下: <%@page contentType="text/html;charset=gb2312"%> <%@page import="java.sql.*"%> <html> <

JSP连接MySql/MS SQL Server/Oracle数据库连接方法[整理]

JSP连接MySql数据库方法 首先先将MySql的数据库连接驱动拷贝到Tomcat/common/lib包下 下载mysql-connector-java-5.1.6.zip http://mysql.cs.pu.edu.tw/Downloads/Connector-J/mysql-connector-java-5.1.6.zip 配置Tomcat的虚拟目录-略 创建jdbcMySql.jsp页面 页面代码如下: 复制代码 代码如下: <%@ page contentType="text

JSP数据库操数据分页显示

<%@ page contentType="text/html;charset=8859_1" %><%//变量声明java.sql.Connection sqlCon; //数据库连接对象java.sql.Statement sqlStmt; //SQL语句对象java.sql.ResultSet sqlRst; //结果集对象java.lang.String strCon; //数据库连接字符串java.lang.String strSQL; //SQL语句int

JSP中的PreparedStatement对象操作数据库的使用教程

PreparedStatement接口继承Statement,并与之在两方面有所不同: PreparedStatement 实例包含已编译的 SQL 语句.这就是使语句"准备好".包含于 PreparedStatement 对象中的 SQL 语句可具有一个或多个 IN 参数.IN参数的值在 SQL 语句创建时未被指定.相反的,该语句为每个 IN 参数保留一个问号("?")作为占位符.每个问号的值必须在该语句执行之前,通过适当的setXXX 方法来提供. 由于 Pre

如何使用JSP访问MySQL数据库

<%@page import="java.sql.*" import ="java.util.*" import ="java.io.*" contentType="text/html; charset=gb2312" %> <html> <head> <title>使用MYsql数据库</title> <meta name="GENERATOR&qu

JSP中使用JDBC访问SQL Server 2008数据库示例

由JDBC驱动直接访问数据库 优点:100% Java,快又可跨平台 缺点:访问不同的数据库需要下载专用的JDBC驱动 (1)下载对应数据库版本的jdbc驱动并安装,注意安装后的得到的三个文件msbase.jar,mssqlserver.jar,msutil.jar,将其拷贝到jsp项目的WEB-INF/lib下面,也拷贝到Tomcat安装目录的lib下面,没有具体测试,应该和配置文件有关系. (2)数据源,不需要 (3)配置文件,不需要 (4)写JSP文件测试 <%@ page content

Jsp连接Access数据库(不通过建立ODBC数据源的方法)

1. 在站点(我的站点为:E:\javatest)下建立文件夹"AccessDb"并在文件夹下建立数据库"test.mdb"以及表"stu",stu字段为 id,stuname      test.mdb所在路径为:E:\javatest\AccessDb 下面如下图: 2.在站点(E:\javatest)下建立测试连接数据库文件"AccessTest.jsp"代码如下: <%@ page contentType=&qu

Java实现JSP在Servelt中连接Oracle数据库的方法

本文实例讲述了Java实现JSP使用Servelt连接Oracle数据库的方法.为了实现在Servlet 中连接数据库,必须编写Servlet 的类程序.将Servlet 类程序放到WEB 服务器的servlets 或者classes 目录下面,为调用Servlet,需要创建发送Servlet 请求的HTML 文档.本例通过(Driver)Class.forName(driverName).newInstance()方法来实现加载驱动程序,建立与数据库连接. 具体程序代码为: 1.Databas

jsp从数据库获取数据填充下拉框实现二级联动菜单的方法

本文实例讲述了jsp从数据库获取数据填充下拉框实现二级联动菜单的方法.分享给大家供大家参考,具体如下: 项目告一段落,现在将遇到的比较实用的东西记录下来,写了多遍了,谨记于此,以备查看! 1.首先在数据库中获取第一个下拉框的数据: <s:select listKey="tsFrom" id="t_tsfrom" cssClass="required" listValue="tsFrom" cssStyle="w

jsp 从web.xml读取连接数据库的参数

jsp或servlet页面代码: 复制代码 代码如下: String driver = application. getIni tParameter ("driver") ; String url = application.getInitParameter("url"); String user = application.getInitParameter("user"); String pass = application.getInitPa

在JSP中访问Oracle数据库

写第一个连接Oracle的JSP程序test.jsp1.连入SQL*Plus以system/manager用户登录,SQL> conn system/manager创建新的用户:如user1/pass1,赋予connect,resource权限.SQL> grant connect,resource to user1 identified by pass1;SQL> conn user1/pass1SQL> create table test(a number,b char(10)

利用asp或jsp,flash怎样把数据库中的一张表中的所有记录读取并显示出来

这样,我写出关键语句,你自己修改整合一下 asp:   数据库连接我就不写了 复制代码 代码如下: <!-- #include file="conn.asp" -->  <%  rs.open "select * from table1",conn,1,1  for i=1 to rs.recordcount  response.write("vlue1"&i&"="&rs("

django重新生成数据库中的某张表方法

今天有碰到这种情况,数据库中有张表没办法通过migration来更改, migrate时报 django.db.utils.OperationalError: (1050, "Table '表名' already exists)索性就直接把这张表删了重新导. 1 删除数据库中的django_migration 表 以及 删除你要重新导的表 2 将你要导的那个app中的migrate 文件删除掉 3 进行虚拟导入 migrate --fake 虚拟导入会重新生成django_migration 表

Oracle数据库如何创建第一张表

对于Oracle数据库的使用,创建一张符合自己需求的表是至关重要的,下面就让我们进行创建第一张属于自己的表 创建表时有两种种方式: (1)在cmd里边更具需要进行创建 (2)在sql developer中进行创建,而对于在可视化界面sqldeveloper中创建时,也有两种方式,即一种是使用命令直接进行创建,另外一种是使用可视化界面按钮进行点击创建 下面就是创建的具体过程: (1)首先我们进行数据的连接,在SQLdeveloper中进行操作,在使用sqldeveloper时需要下载sqldeve

SQL Server数据库按百分比查询出表中的记录数

SQL Server数据库查询时,能否按百分比查询出记录的条数呢?答案是肯定的.本文我们就介绍这一实现方法. 实现该功能的代码如下: create procedure pro_topPercent ( @ipercent [int] =0 --默认不返回 ) as begin select top (@ipercent ) percent * from books end 或 create procedure pro_topPercent ( @ipercent [int] =0 ) as be

注册表中存储数据库链接字符串的方法

数据库的链接字符串是用数据库开发所必须的信息,我们通过链接字符串连接数据库,并进行各种数据库操作.那么链接字符串的存到哪里好呢?这没有什么定论,Asp系统开发中,一般存在一个conn.asp包含文件中或者如果又是COM,可能还会封闭到COM中,.Net开发中,大多数都选择存在Web.conifg中,也有人存储在另外一个单独的文件中.那么本文提供的是把数据库链接信息存储到注册表中的方案.也许你要问为什么要存到注册表呢?我想最起码的好处是安全,注册表的访问权限很高,一般远程服务在没有得到管理员账号的

修改MySQL数据库中表和表中字段的编码方式的方法

今天向MySQL数据库中的一张表添加含有中文的数据,可是老是出异常,检查程序并没有发现错误,无奈呀,后来重新检查这张表发现表的编码方式为latin1并且原想可以插入中文的字段的编码方式也是latin1,然后再次仔细观察控制台输出的异常,进一步确定是表和表中字段编码不当造成的,那就修改表和其中对应的字段呗,网上找了一会儿,你别说还真有,执行完sql脚本后果然可以存入中文了,尽管如此还是认为有必要总结一下,古人云:好记性不如烂笔头嘛,呵呵呵. 修改表的编码方式:ALTER TABLE `test`

用SQL语句查询数据库中某一字段下相同值的记录方法

今天接到一任务,有一张学生信息表(Excel表),里面有一万多条记录,现在要把这张表导入到数据库中,并设置学生学号为主键,但是现在这张表中的学生学号有重复的记录,我必须先找出这些重复的记录,然后再进行筛选,经过研究问题终于得到解决.      以上问题实际上就是查询数据库表中某一字段值重复的记录,这里省略如何将Excel表导入到数据库步骤,只讨论用SQL查询数据库中某一字段下相同值的记录方法. 现在假设数据库表名为student,里面有字段Sno(学号),ID(身份证),这里提供两种查询的方法:

利用ASP.NET MVC+Bootstrap搭建个人博客之修复UEditor编辑时Bug(四)

我的个人博客站在使用百度富文本编辑器UEditor修改文章时,遇到了一些问题,(不知是bug,还是我没有配置好).但总算找到了解决方法,在此记录下来. 小站首页文章列表显示为(显示去除HTML标签后的前600个字符): 具体在www.zynblog.com 遇到的问题: 正常来讲,进入文章修改页,只需将UEditor对应的textarea的value设置为文章Content就行了: $('#editor').val('@Html.Raw(this.Model.Contents)'); 最开始我就

利用ASP输出excel文件实例讲解

在asp中利用excel的一个方法是将excel文件作为一个数据库进行链接,然后的操作和对access数据库操作类似.但是这个方法不是总能有用的,应为excel不是关系型的数据库.对于一个固定格式,这个格式里有复杂的单元格合并,边框线条样式,还有图案,单元格之间还有公式关系等等的,我想最容易理解的就是在后台打开一个已有设定好模板的文件,然后在需要的地方插入数据,保存,输出... ... 这里提到的这种方法是直接建立一个excel对象,在后台可以更方便的对excel文档进行各种操作. 服务器端还必

利用ASP.NET技术动态生成HTML页面

思路 1. 利用如Dw-Mx这样的工具生成html格式的模板,在需要添加格式的地方加入特殊标记(如$htmlformat$),动态生成文件时利用代码读取此模板,然后获得前台输入的内容,添加到此模板的标记位置中,生成新文件名后写入磁盘,写入后再向数据库中写入相关数据. 2. 使用后台代码硬编码Html文件,可以使用HtmlTextWriter类来写html文件. 优点 1. 可以建立非常复杂的页面,利用包含js文件的方法,在js文件内加入document.write()方法可以在所有页面内加入如页