目录
北极星书库
数据更新表单与数据插入表单类似,主要的不同有两点。一个数据更新表单包含对要更新的记录的主关键字的引用。主关键字是一个数据库表格中的一个或多个字段,主关键字可以唯一地确定表中的每一条记录。例如,在一个员工姓名和地址表中,只有Employee_ID对每个记录具有唯一值。另外,由于数据更新表单用于更新已经存在的数据,因此表单的内容通常取自数据库中。你必须首先用CFQUERY标签从数据库中选择记录,然后在CFOUTPUT中建立表单,用选择出的记录的值填充表单字段。
设计主关键字
在数据更新表单中指定主关键字的最容易的方法是使用一个隐含字段,其值为要更新的记录的主关键字的值。如下例所示:
<!--- Query to select record --->
<CFQUERY NAME="EmployeeRecord"
DATASOURCE="Employee DB">
SELECT *
FROM Employees
WHERE Employee_ID = #URL.EmployeeID#
</CFQUERY>
<HTML>
<HEAD>
<TITLE>Input Form</TITLE>
</HEAD>
<BODY>
<CFOUTPUT QUERY="EmployeeRecord">
<!--- Input form --->
<FORM ACTION="EmployeeUpdate.cfm" METHOD="Post">
<!--- Primary Key value indicating record to update --->
<INPUT TYPE="Hidden" NAME="Employee_ID"
VALUE="#Employee_ID#">
<PRE>
FirstName: <INPUT TYPE="Text" NAME="FirstName"
VALUE="#FirstName#">
LastName: <INPUT TYPE="Text" NAME="LastName"
VALUE="#LastName#">
Phone: <INPUT TYPE="Text" NAME="Phone"
VALUE="#Phone#"><BR>
<INPUT TYPE="Submit" VALUE="Update Information">
</PRE>
</FORM>
</CFOUTPUT>
</BODY>
</HTML>
在这个例子中,Employee_ID是表Employees的主关键字,于是在HTML表单中使用了一个隐含字段Employee_ID(注意Form字段与数据库字段名字相同)。该隐含字段指示ColdFusion要更新的是哪一条记录。本例中主关键字来自URL参数。
前页
目录
北极星书库