乙個整合SQL語句的類

2021-09-04 16:14:22 字數 3826 閱讀 2269

我們在寫asp資料庫程式的時候,通常都會用到sql語句,而在增加資料和更新資料的時候,通常會使用一下方式:insert into message (incept,sender,title,content,sendtime,flag,issend) values ('"&incept(i)&"','"&membername&"','"&title&"','"&message&"',now(),0,1)當欄位比較多的時候,而且更新的表比較多的時候,修改起來會比較麻煩,而且查詢錯誤也比較困難。使用這個sql類後可以簡化修改,而且查錯也比較容易。通過類的addfield函式增加欄位名和字段值,可輕鬆的將欄位名和字段值插入sql語句,然後返回該sql語句。

下面讓我們看看這個類的**:

<%  

class sqlstring  

'************************************  

'變數定義  

'************************************  

'stablename ---- 表名

'isqltype ----sql語句型別:0-增加,1-更新,2-刪除,3-查詢

'swhere ---- 條件

'sorder ---- 排序方式

'ssql ----值

private stablename,isqltype,swhere,sorder,ssql  

'************************************  

'類初始化/結束  

'************************************  

private sub class_initialize()  

stablename=""

isqltype=0  

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 0  

ssql="insert into #0 (#1) values (#2)"

case 1  

ssql="update #0 set #1=#2"

case 2  

ssql="delete from #0 "

case 3  

ssql="select #1 from #0 "

endselect

end property  

'************************************  

'函式  

'************************************  

'增加字段(欄位名稱,字段值)  

public sub addfield(sfieldname,svalue)  

select

case isqltype  

case 0  

ssql=replace(ssql,"#1",sfieldname & ",#1")  

ssql=replace(ssql,"#2","'" & sfieldname & "',#2")  

case 1  

ssql=replace(ssql,"#1",sfieldname)  

ssql=replace(ssql,"#2","'" & sfieldname & "',#1=#2")  

case 3  

ssql=replace(ssql,"#1",sfieldname & ",#1")  

endselect

end sub  

'返回sql語句  

public

function returnsql()  

ssql=replace(ssql,"#0",stablename)  

select

case isqltype  

case 0  

ssql=replace(ssql,",#1","")  

ssql=replace(ssql,",#2","")  

case 1  

ssql=replace(ssql,",#1=#2","")  

case 3  

ssql=replace(ssql,",#1","")  

endselect

if swhere<>""

then

ssql=ssql & " where " & swhere  

end if  

if sorder<>""

then

ssql=ssql & " order by "  & sorder  

end if  

returnsql=ssql  

endfunction

'清空語句  

public sub clear()  

stablename=""

isqltype=0  

swhere=""

sorder=""

ssql=""

end sub  

end class  

%> 

使用方法:

例句:insert into message (incept,sender,title,content,sendtime,flag,issend) values ('"&incept(i)&"','"&membername&"','"&title&"','"&message&"',now(),0,1)

set a =new sqlstring

『建立類物件

a.tablename=" message "

『設定表名為message

a.sqltype=0

『設定查詢型別為增加記錄

a.addfield " incept", incept(i)

a.addfield " sender ", membername

a.addfield " title ", membername

a.addfield " sender ", title

a.addfield " content ", message

a.addfield " sendtime ", sendtime()

a.addfield " flag", 0

a.addfield " issend ", 1

response.write a.returnsql

set a=nothing

乙個整合SQL語句的類

我們在寫 asp資料庫程式的時候,通常都會用到 sql語句,而在增加資料和更新資料的時候,通常會使用一下方式 insert into message incept,sender,title,content,sendtime,flag,issend values incept i membername...

ASP整合的乙個SQL語句類

asp整合的乙個sql語句類 熱 asp整合的乙個sql語句類 我們在寫asp資料庫程式的時候,通常都會用到sql語句,而在增加資料和更新資料的時候,通常會使用一下方式 insert into message incept,sender,title,content,sendtime,flag,iss...

乙個不會的SQL語句

12.有兩個表a 和b 均有key 和value 兩個字段,如果b 的key 在a 中也有,就把b 的value 換為a 中對應的value 這道題的sql 語句怎麼寫?update b set value select value from awhere a.key b.key where exi...