asp

位置:IT落伍者 >> asp >> 浏览文章

ASP整合一个SQL语句类


发布日期:2023年06月01日
 
ASP整合一个SQL语句类

我们在写asp数据库程序的时候通常都会用到SQL语句而在增加数据和更新数据的时候通常会使用一下方式insert into message (inceptsendertitlecontentsendtimeflagissend) values ("&incept(i)&""&membername&""&title&""&message&"Now()) 当字段比较多的时候而且更新的表比较多的时候修改起来会比较麻烦而且查找错误也比较困难使用这个SQL类后可以简化修改而且查错也比较容易通过类的AddField函数增加字段名和字段值可轻松的将字段名和字段值插入SQL语句然后返回该SQL语句

下面让我们看看这个类的代码

<%
class SQLString
************************************
变量定义
************************************
sTableName 表名
iSQLType SQL语句类型增加更新删除查询
sWhere 条件
sOrder 排序方式
sSQL

PRivate sTableNameiSQLTypesWheresOrdersSQL

************************************
类初始化/结束
************************************

Private Sub Class_Initialize()
sTableName=""
iSQLType=
sWhere=""
sOrder=""
sSQL=""
End Sub

Private Sub Class_Terminate()

End Sub

************************************
属性
************************************
‘设置表名的属性

Public Property Let TableName(value)

sTableName=value

End Property

‘设置条件

Public Property Let Where(value)

sWhere=value

End Property

‘设置排序方式

Public Property Let Order(value)

sOrder=value

End Property

‘设置查询语句的类型

Public property Let SQLType(value)

iSQLType=value
select case iSQLType
case
sSQL="insert into # (#) values (#)"
case
sSQL="update # set #=#"
case
sSQL="delete from # "
case
sSQL="select # from # "
end select
End Property

************************************
函数
************************************
增加字段(字段名称字段值)

Public Sub AddField(sFieldNamesValue)
select case iSQLType
case
sSQL=replace(sSQL"#"sFieldName & "#")
sSQL=replace(sSQL"#""" & sFieldName & "#")
case
sSQL=replace(sSQL"#"sFieldName)
sSQL=replace(sSQL"#""" & sFieldName & "#=#")
case
sSQL=replace(sSQL"#"sFieldName & "#")
End Select
End Sub

返回SQL语句
Public Function ReturnSQL()
sSQL=replace(sSQL"#"sTableName)
select case iSQLType
case
sSQL=replace(sSQL"#""")
sSQL=replace(sSQL"#""")
case
sSQL=replace(sSQL"#=#""")
case
sSQL=replace(sSQL"#""")
end Select
if sWhere<>"" then
sSQL=sSQL & " where " & sWhere
end if
if sOrder<>"" then
sSQL=sSQL & " order by " & sOrder
end if
ReturnSQL=sSQL
End Function

清空语句

Public Sub Clear()
sTableName=""
iSQLType=
sWhere=""
sOrder=""
sSQL=""

End Sub

end class

%>

使用方法

例句insert into message (inceptsendertitlecontentsendtimeflagissend) values ("&incept(i)&""&membername&""&title&""&message&"Now())

set a =new SQLString ‘创建类对象
aTableName=" message " ‘设置表名为message
aSQLType= ‘设置查询类型为增加记录
aAddField " incept" incept(i)
aAddField " sender " membername
aAddField " title " membername
aAddField " sender " title
aAddField " content " message
aAddField " sendtime " sendtime()
aAddField " flag"
aAddField " issend "
ResponseWrite aReturnSQl
set a=nothing

上一篇:ASP Request对象的使用

下一篇:学习ASP编程必会的代码