日期:2009-09-22  浏览次数:21163 次

<!—对于ASP编程来说,把用户输入的信息保存在数据库里是件非常费力的工作。本文提供了了更简单的方法,可以自动建立所有必须的SQL语句。-->

ASP页面最常见的一个任务是取得用户在HTML表单中输入的数据,并把数据保存到数据库中。可惜的是,这意味着您不得不提取数据,并把它们插到有效的SQL语句里,这样才能把数据保存到数据库中。如果您要插入或更新的字段超过5个,那么用来建立SQL语句的ASP代码就会迅速发展成一个恶梦。在本文中,我们将向您演示一个建立SQL语句的快速简易方法。

首先来看困难的方法。让我们看一个简单的HTML表单,它有三个字段:fname, lname, 和age。现在,假设我们要把这些信息插入数据库。列表 A 显示了我们所用表单的HTML代码及建立SQL语句的ASP代码。
列表 A
<%
'从表单中提取值
fName = request.form("fName")
lName = request.form("lName")
age = request.form("age")

'建立SQL语句
iStr = "insert into uData (fName, lName, age) "
iStr = iStr & "values ("
iStr = iStr & "'" & fName & "', "
iStr = iStr & "'" & lName & "', "
iStr = iStr & age & ")"

if trim(fName <> "") then
response.write( iStr & "<BR>")
else
%>

<HTML>
<body>
<form name=f method=post action="listing1.ASP">
Gimme your:<br>
First Name: <input type=text name="fName"><br>
Last Name: <input type=text name="lName"><br>
Age: <input type=text name="age"><br>
<input type="submit" value="Submit">
</form>
</body>
</HTML>

<%
end if
%>

虽然这段ASP代码看起来还不坏,但是设想一下,如果有10个、50个甚至150个字段的话,它会变成什么样子?而且,这种方法要求我们知道每个字段的名称和存储在字段中的数据类型。这是因为,在SQL的插入语句中,字符串必须用单引号括起来,数值则不允许括起来。虽然跟踪3个字段并不是很难,但是当字段数目增长时,跟踪工作就变得繁冗乏味。