<x:modify>

x:modify 操作用来在关系数据库中执行插入、更新或删除语句。也可执行其他 SQL 语句,但即使它们返回结果集,也不能对其进行访问。

使用此操作将创建 DBModify Bean,可以使用变量(名称在 id 属性中指定)访问这个 Bean。

提供了 JSP 操作来使用 DBModify Bean 的基本功能。如果 SQL 语句带有参数,则可使用 x:getParameterx:parameter 操作对其进行访问。

DBModify Bean 的所有方法也都可以使用 scriptlet 执行,并且它的所有属性都可以使用标准的 jsp:getPropertyjsp:setProperty 操作访问。

语法

<x:modify 	id = "name"
		scope = "page|request"	
		connectionSpec = "connectionSpec_id"
		connectionSpecRef = "connectionSpecRef"	
		timeOut = "seconds"
		nullToken = "string"
		trace = "true|false" >
	<x:sql>
	</x:sql>	
	<x:parameter	
			parmName = "name"
			position = "number"
		type = "sqltype"
		mode = "in|out|inout" 
		value = "parmValue" />
	
</x:modify>

x:modify 操作具有下列属性:

id
用来在页名称空间中标识 DBModify Bean 的名称,这也是它的脚本编制变量名。指定的名称区分大小写,且必须符合当前脚本语言的变量命名约定。

引用 DBModify Bean 的一个原因是使用 jsp:getProperty 操作来从它的 updateCount 属性获取更新计数。

scope
用来定义对象的作用域。缺省值为 page。
connectionSpec
x:dataSourceSpecx:driverManagerSpec 操作的标识。值区分大小写,且必须与作用域内的 connectionSpec 操作相匹配。

引用的操作提供了连接至数据库所需的信息。如果操作发生在 x:batch 操作的主体内(在这种情况下,将使用 x:batch 操作中标识的 connectionSpec 操作),则省略此属性。如果同时在这两个位置中指定它,并且值不匹配,则会将其标记为错误。

connectionSpecRef
对将要用来获取进行连接所需信息的 DBConnectionSpec 对象的引用。

可以指定 connectionSpec 或 connectionSpecRef,但不能同时指定两者。

timeOut
允许语句执行的最大秒数。缺省值为 0,表示没有最大值。
nullToken
指定将用来表示数据库空值的区分大小写字符串值。此属性是可选的。它作为任何对此 Modify 获取或设置参数值的操作上的同一属性的缺省值。如果在两个位置中都省略此属性,则缺省值为 &empty。&empty 是一个特殊值,类似于 HTML 字符实体, 在此属性中,将其识别为代表空字符串。有关空值表示法的更多信息,请参阅空值
trace
是否启用对数据库操作的跟踪。缺省值为 False。

x:modify 操作的主体可以带有下列标记:

<x:sql>
此属性指定要执行的 SQL 语句。
<x:parameter>
此属性为 SQL 语句中的参数指定值和元数据。在 x:parameter 标记与 SQL 语句中的参数之间必须存在一一对应关系。

反馈