每次在操作數(shù)據(jù)庫(kù)的時(shí)候最煩的就是根據(jù)表單提交的內(nèi)容寫sql語(yǔ)句,特別是字段比較多的時(shí)候很麻煩,動(dòng)不動(dòng)就容易寫錯(cuò)。所以我就寫了下面的生成sql語(yǔ)句的函數(shù),用了用覺(jué)得還可以。
程序代碼:
<%
’========以下所有函數(shù)都沒(méi)有加入容錯(cuò)機(jī)制,所以一定要保證參數(shù)的正確性========
’================參數(shù)說(shuō)明================
’此Function返回的是插入數(shù)據(jù)的sql語(yǔ)句
’注意:使用此Function必須使form里的字段名和數(shù)據(jù)庫(kù)里的字段名一致
’并且按鈕不能為submit,要為button,通過(guò)JavaScript的submit方法提交表單
’objForm必須為request.Form
’tbName為插入數(shù)據(jù)的表名
’numStr為不需要用單引號(hào)引起來(lái)的字段,字段之間用逗號(hào)(,)分割,沒(méi)有請(qǐng)用""代替
’=======================================
Function insertStr(objForm,tbName,numStr)
dim tbField()
dim tbfieldVal()
i=0
for each objItem in objForm
redim preserve tbField(i)
tbField(i)=objItem
redim preserve tbfieldVal(i)
numPos=instr(numStr,objItem)
if numPos<>0 then
tbfieldVal(i)=trim(objForm(objItem))
else
tbfieldVal(i)="’"&trim(objForm(objItem))&"’"
end if
i=i+1
next
insertStr="insert into "&tbName&"("&join(tbField,",")&") values("&join(tbfieldVal,",")&")"
End Function
程序代碼:
<%
’========以下所有函數(shù)都沒(méi)有加入容錯(cuò)機(jī)制,所以一定要保證參數(shù)的正確性========
’================參數(shù)說(shuō)明================
’此Function返回的是插入數(shù)據(jù)的sql語(yǔ)句
’注意:使用此Function必須使form里的字段名和數(shù)據(jù)庫(kù)里的字段名一致
’并且按鈕不能為submit,要為button,通過(guò)JavaScript的submit方法提交表單
’objForm必須為request.Form
’tbName為插入數(shù)據(jù)的表名
’numStr為不需要用單引號(hào)引起來(lái)的字段,字段之間用逗號(hào)(,)分割,沒(méi)有請(qǐng)用""代替
’=======================================
Function insertStr(objForm,tbName,numStr)
dim tbField()
dim tbfieldVal()
i=0
for each objItem in objForm
redim preserve tbField(i)
tbField(i)=objItem
redim preserve tbfieldVal(i)
numPos=instr(numStr,objItem)
if numPos<>0 then
tbfieldVal(i)=trim(objForm(objItem))
else
tbfieldVal(i)="’"&trim(objForm(objItem))&"’"
end if
i=i+1
next
insertStr="insert into "&tbName&"("&join(tbField,",")&") values("&join(tbfieldVal,",")&")"
End Function