SQL相关的标签(二) <sql:update> 作用:主要是执行插入、更新和删除操作的标签。另外,还有一些没有返回结果集的sql操作也可以使用这个标签。比如 create table tableName(id int….); drop table tableName grant tableName 等等。。 语法:a、没有body的情况 <sql:update sql=”sqlUpdate” [dataSource=”dataSource”] [var=”varName”] [scope=”{page|session|request|application}”]/> b、有body ,并且在body中指定参数 <sql:update sql=”sqlUpdate” [dataSource=”dataSource”] [var=”varName”] [scope=”{page|session|request|application}”] > <sql:param> actions </sql:update> c、有body,在body中指定sql语句和可选的参数 <sql:update sql=”sqlUpdate” [dataSource=”dataSource”] [var=”varName”] [scope=”{page|session|request|application}”] > Update statement <sql:param> actions </sql:update> 举例:sql_update.jsp <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> <%@ taglib prefix="sql" uri="http://java.sun.com/jsp/jstl/sql" %> <%@ page contentType="text/html; charset=gb2312" language="java" %> <html> <head> <title>JSTL:的使用</title> </head> <sql:setDataSource var="ds2" dataSource="jdbc/ch12" /> 更新记录值1<hr> <sql:update var="update1" dataSource="${ds2}"> update sql_test set power='low' where id=01 </sql:update> 第2种更新:创建表<hr> <sql:update var="update4" sql="create table sql_temp_901(test varchar(20))" dataSource="${ds2}"/> 第3种更新:增加记录 <sql:update var="update5" sql="insert into sql_temp_901 values('hellking')" dataSource="${ds2}"/> 第4种更新:删除记录<hr> <sql:update var="update6" sql="delete from sql_temp_901 where test='hellking'" dataSource="${ds2}"/> 第5种更新:删除表<hr> <sql:update var="update7" sql="drop table sql_temp_901" dataSource="${ds2}"/> </body> </html> <sql:transaction> 作用:用语事务处理,它为<sql:query>和<sql:update>建立事务处理上下文,并且提供相同的数据源。 语法:<sql:transation [dataSource=”dataSourceName”]> [isolation=”isolationLevel”]> <sql:query> and <sql:update> statement </sql:transation> isolationLevel ::=”read_committed” |”read_uncommitted” |”repeatable_read” |”serializable” 注意:DataSource属性和其他标签的DataSource属性一样,isolactionlevel属性指定事务隔离的级别,如果没有指定它的值,那么就使用自己配置的DataSource事务隔离级别。而且,嵌套在里面的<sql:query> 和 <sql:update>标签不能再指定其他的数据源。<sql:transaction> 是数据库封装的轻量级事务处理,如果你需要复杂的事务处理或者分布试处理,它就不适合。 举例:sql_transaction.jsp <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> <%@ taglib prefix="sql" uri="http://java.sun.com/jsp/jstl/sql" %> <%@ page contentType="text/html; charset=gb2312" language="java" %> <html> <head> <title>JSTL:sql:transaction的使用</title> </head> <sql:setDataSource var="ds2" dataSource="jdbc/ch12" /> <h2>使用事务处理方式创建一个表:</h2> <sql:transaction dataSource="${ds2}"> <sql:update var="test_temp902"> create table test_temp902 ( id int primary key, name varchar(80) ) </sql:update> <sql:update sql="insert into test_temp902 values(01,'wyy')"/> <sql:update sql="update sql_test set power='wyy' where id=01"/> </sql:transaction> </body> </html> <sql:param> 作用:设置sql语句中“?”表示的占位符号的值。 语法:a、没有body,使用value指定。 <sql:param value=”value”/> b、在body中指定 <sql:param> 参数值 </sql:param> 举例:sql_param.jsp <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> <%@ taglib prefix="sql" uri="http://java.sun.com/jsp/jstl/sql" %> <%@ page contentType="text/html; charset=gb2312" language="java" %> <html> <head> <title>JSTL:sql:param的使用</title> </head> <sql:setDataSource var="example" dataSource="jdbc/ch12" /> 执行更新操作:<hr> <sql:update var="update2" sql="update sql_test set power=? where id=?" dataSource="${example}"> <sql:param value="high"/> <sql:param value="01"/> </sql:update> </body> </html>

评论