本章介绍怎么通过 dbutil 标签来实现数据库的 insert , update , delete 操作
1.1.1 Insert 操作
<%@ page contentType = "text/html; charset=GBK" language = "java" import = "java.sql.*,java.util.List" errorPage = "" %>
1.1.1.1 导入标签定义文件
<%@ taglib uri = "/WEB-INF/pager-taglib.tld" prefix = "pg" %>
<!--
dbutil 标签实现 insert 操作
statement: 数据库 insert 语句
dbname:insert 的相应数据库名称,在 poolman.xml 文件中进行配置
-->
1.1.1.2 定义预编译 sql 语句
<%
String object_id = "1" ;
String owner = "duoduo" ;
String object_name = "table_insert" ;
String created = "2010-03-12 16:52:10" ;
String last_ddl_time = "2010-03-12 16:52:11" ;
String sql = "insert into sqltest(object_id,owner,object_name,created,last_ddl_time) values(#[object_id],#[owner],#[object_name],#[created],#[last_ddl_time])" ;
%>
Sql 语句中的变量 #[object_id],#[owner],#[object_name],#[created],#[last_ddl_time]
的值和类型将在标签 pg:sqlparam 中指定
< html >
< head >
< title > 测试在 dbutil 标签上直接执行数据库插入操作 </ title >
</ head >
< body >
< table >
1.1.1.3 Dbutil 执行预编译插入操作
< pg:dbutil statement = "<%= sql %> "
dbname = "bspf"
pretoken = "#//[" endtoken = "//]"
action = "insert" >
statement 属性指定了先前定义的预编译插入语句
dbname 为数据库连接池的名称
pretoken = "#//[" endtoken = "//]" 分别指定了变量的分界符
action=insert 指定了本次执行的是 insert 操作。
1.1.1.4 指定各变量的值和类型
< pg:sqlparam name = "object_id" value = "<%= object_id %> " type = "int" />
< pg:sqlparam name = "owner" value = "<%= owner %> " type = "string" />
< pg:sqlparam name = "object_name" value = "<%= object_name %> " type = "string" />
< pg:sqlparam name = "created" value = "<%= created %> " type = "date" />
< pg:sqlparam name = "last_ddl_time" value = "<%= last_ddl_time %> " type = "timestamp" />
</ pg:dbutil >
<%= dbutil_result %>
Name 属性指定变量的名称,
Value 属性指定变量的值
Type 属性指定变量的类型,如果没有指定那么默认为字符串类型
dbutil_result 存放 insert 操作所插入的记录数
</ table >
</ body >
</ html >
上面说明的是预编译操作,要进行普通插入操作:
< pg:dbutil statement = "<%= sql %> "
dbname = "bspf"
pretoken = "#//[" endtoken = "//]"
action = "insert" >
</ pg:dbutil >
<%= dbutil_result %>
其中的 sql 为一条完成的插入语句即可。例如: insert into table ( name ) values(‘duoduo’) 。
1.1.2 update 操作
<%@ page contentType = "text/html; charset=GBK" language = "java" import = "java.sql.*,java.util.List" errorPage = "" %>
1.1.2.1 导入标签定义文件
<%@ taglib uri = "/WEB-INF/pager-taglib.tld" prefix = "pg" %>
<!--
dbutil 标签实现 update 操作
statement: 数据库 update 语句
dbname:update 的相应数据库名称,在 poolman.xml 文件中进行配置
-->
1.1.2.2 定义预编译 sql 语句
<%
String object_id = "1" ;
String created = "2010-03-12 12:43:54" ;
String sql = "update sqltest set created=#[created] where object_id=#[object_id]" ;
%>
Sql 语句中的变量 #[created], #[object_id]
的值和类型将在标签 pg:sqlparam 中指定
< html >
< head >
< title > 测试在 dbutil 标签上直接执行数据库 update 操作 </ title >
</ head >
< body >
< table >
1.1.2.3 Dbutil 执行预编译修改操作
< pg:dbutil statement = "<%= sql %> "
dbname = "bspf"
pretoken = "#//[" endtoken = "//]"
action = "update" >
statement 属性指定了先前定义的预编译 update 语句
dbname 为数据库连接池的名称
pretoken = "#//[" endtoken = "//]" 分别指定了变量的分界符
action=update 指定了本次执行的是 update 操作。
1.1.2.4 指定各变量的值和类型
< pg:sqlparam name = "object_id" value = "<%= object_id %> " type = "int" />
< pg:sqlparam name = "created" value = "<%= created %> " type = "timestamp" />
</ pg:dbutil >
<%= dbutil_result %>
Name 属性指定变量的名称,
Value 属性指定变量的值
Type 属性指定变量的类型,如果没有指定那么默认为字符串类型
dbutil_result 存放 update 操作所修改的记录数
</ table >
</ body >
</ html >
上面说明的是预编译操作,要进行普通 update 操作:
< pg:dbutil statement = "<%= sql %> "
dbname = "bspf"
pretoken = "#//[" endtoken = "//]"
action = "update" >
</ pg:dbutil >
<%= dbutil_result %>
其中的 sql 为一条完整的 update 语句即可。例如: update table set name=‘duoduo’ 。
1.1.3 Delete 操作
<%@ page contentType = "text/html; charset=GBK" language = "java" import = "java.sql.*,java.util.List" errorPage = "" %>
1.1.3.1 导入标签定义文件
<%@ taglib uri = "/WEB-INF/pager-taglib.tld" prefix = "pg" %>
<!--
dbutil 标签实现 delete 操作
statement: 数据库查询语句
dbname: delete 的相应数据库名称,在 poolman.xml 文件中进行配置
-->
1.1.3.2 定义预编译 sql 语句
<%
String object_id = "15" ;
String sql = "delete from sqltest where object_id=#[object_id] " ;
%>
Sql 语句中的变量 #[object_id]
的值和类型将在标签 pg:sqlparam 中指定
< html >
< head >
< title > 测试在 dbutil 标签上直接执行数据库 delete 操作 </ title >
</ head >
< body >
< table >
1.1.3.3 Dbutil 执行预编译 delete 操作
< pg:dbutil statement = "<%= sql %> "
dbname = "bspf"
pretoken = "#//[" endtoken = "//]"
action = " delete" >
statement 属性指定了先前定义的预编译 delete 语句
dbname 为数据库连接池的名称
pretoken = "#//[" endtoken = "//]" 分别指定了变量的分界符
action= delete 指定了本次执行的是 delete 操作。
1.1.3.4 指定各变量的值和类型
< pg:sqlparam name = "object_id" value = "<%= object_id %> " type = "int" />
</ pg:dbutil >
<%= dbutil_result %>
Name 属性指定变量的名称,
Value 属性指定变量的值
Type 属性指定变量的类型,如果没有指定那么默认为字符串类型
dbutil_result 存放 delete 操作所删除记录数
</ table >
</ body >
</ html >
上面说明的是预编译操作,要进行普通 delete 操作:
< pg:dbutil statement = "<%= sql %> "
dbname = "bspf"
pretoken = "#//[" endtoken = "//]"
action = " delete" >
</ pg:dbutil >
<%= dbutil_result %>
其中的 sql 为一条完整的 delete 语句即可。例如: delete frome table where name=‘duoduo’ 。