Ich habe es gefunden, indem ich im Internet nach Informationen gesucht habe, aber beim Debuggen habe ich einige Probleme festgestellt. Nach einigen Änderungen gibt es immer noch einige Probleme, aber es kann für den allgemeinen Gebrauch verwendet werden. Das Datentypproblem und der Unterschied zwischen SQL Server und Access wurden nicht berücksichtigt. Ich weiß nicht, wie effizient es sein wird, wenn ich in Zukunft Zeit habe. Wenn jemand es verbessert, senden Sie mir bitte eine Kopie.
Kopieren Sie den Code wie folgt:<%
class SQLString
'************************************
'Variablendefinition
' ************************************
'sTableName ---- Tabellenname'iSQLType
--- - SQL-Anweisungstyp: 0-Add, 1-Update, 2-Delete, 3-Query'sWhere
---- Condition'sOrder
---- Sorting
Method'sSQL ---- Value
Private sTableName,iSQLType,sWhere,sOrder , sSQL
'****************************************
'Klasseninitialisierung/-ende
'*********************************
Private Sub Class_Initialize()
sTableName=
iSQLType =0
sWhere=
sOrder=
sSQL=
End Sub
Private Sub Class_Terminate()
End Sub
'******************************** ** **
'Attribut
'**************************************
'Setzen Sie das Attribut
Public des Tabellennamens Property Let TableName(value)
sTableName=value
End Property
'Bedingungen festlegen
Öffentliche Eigenschaft Let Where(value)
sWhere=value
End Property
'Legen Sie die Sortiermethode fest.
Öffentliche Eigenschaft Let Order(value)
sOrder=value
End Property
'Legen Sie den Typ der Abfrageanweisung fest.
Öffentliche Eigenschaft Let SQLType(value)
iSQLType=value
select case iSQLType
case 0
sSQL=insert into {&*#}0 ( {& *#}1) Werte ({&*#}2)
Fall 1
sSQL=aktualisieren {&*#}0 festlegen {&*#}1={&*#}2
Fall 2
sSQL=löschen from {&*#}0
case 3
sSQL=select {&*#}1 from {&*#}0
end select
End Property
'******************** ****************
'Funktion
'****************************** * ****
'Feld hinzufügen (Feldname, Feldwert)
Public Sub AddField(sFieldName,sValue)
select case iSQLType
case 0
sSQL=replace(sSQL,{&*#}1,sFieldName & ,{&*#}1 )
sSQL=replace(sSQL,{&*#}2, & sValue & ,{&*#}2)
Fall 1
sSQL=replace(sSQL,{&*#}1,sFieldName)
sSQL=replace(sSQL,{&* #}2, & sValue & ,{&*#}1={&*#}2)
Fall 3
sSQL=replace(sSQL,{&*#}1,sFieldName & ,{&*#}1)
End Select
End Sub
'Geänderte Funktion, die einen Zeichenfolgenwert zurückgibt
' SQL-Anweisung zurückgeben
Öffentliche Funktion ReturnSQL()
sSQL=replace(sSQL , {&*#}0,sTableName)
select case iSQLType
case 0
sSQL=replace(sSQL,,{&*#}1,)
sSQL=replace(sSQL,,{&*#}2,)
Fall 1
sSQL=replace(sSQL,,{&*#}1={&*#}2,)
Fall 3
sSQL=replace(sSQL,,{& *#}1,)
end Select
if sWhere<> and iSQLType<>0 then
sSQL=sSQL & where & sWhere
end if
if sOrder<> and iSQLType<>0 then
sSQL=sSQL & order by & sOrder
end if
ReturnSQL=sSQL
End Function
'SQL-Anweisung zurückgeben
Öffentliche Funktion ReturnSQL1()
sSQL=replace(sSQL,{&*#}0,sTableName)
select case iSQLType
case 0
sSQL=replace(sSQL, ,{&*#}1,)
sSQL=replace(sSQL,,{&*#}2,)
Fall 1
sSQL=replace(sSQL,,{&*#}1={&*#}2,)
case 3
sSQL=replace(sSQL,,{&*#}1,)
end Wählen Sie aus
, ob sWhere<> und iSQLType<>0 then
sSQL=sSQL & where & sWhere
end if
if sOrder<> and iSQLType<>0 then
sSQL=sSQL & order by & sOrder
end if
ReturnSQL=sSQL
End Function
'Clear-Anweisung
Public Sub Clear()
sTableName=
iSQLType=0
sWhere=
sOrder=
sSQL=
End Sub
End class
%>
Aufrufbeispiel:
<%
set a =new SQLString 'Erstelle ein Klassenobjekt
a.TableName= message 'Lege den Tabellennamen fest zur Nachricht
'a.where= issend =9
'a.order= issend desc
a.SQLType=0 'Legen Sie den Abfragetyp fest, um Datensätze hinzuzufügen
a.AddField incept, '2'
a.AddField sender , '%3%'
a.AddField title , #&now&#
a.AddField sender , 5
a.AddField content , 6
a.AddField sendtime , 7
a.AddField flag, 8
a.AddField issend , 9
Antwort. Schreiben Sie a.ReturnSQl
set a=nothing
%>
<%
set a =new SQLString 'Erstellen Sie ein Klassenobjekt
a.TableName= message 'Legen Sie den Tabellennamen fest message
'a.where= issend =9
'a.order= issend desc
a.SQLType=0 'Legen Sie den Abfragetyp fest, um Datensätze hinzuzufügen
a.AddField incept, ' 2'
a.AddField sender , '%3%'
a.AddField title , #&now&#
a.AddField sender , 5
a.AddField content , 6
a.AddField sendtime , 7
a.AddField flag, 8
a.AddField issend , 9
Response.Write a.ReturnSQl
set a=nothing
%>
<%
set a =new SQLString 'Klassenobjekt erstellen
a.TableName= message 'Tabellennamen festlegen Für die Nachricht
'a.where= issend =9
'a.order= issend desc
a.SQLType=0 'Legen Sie den Abfragetyp fest, um Datensätze hinzuzufügen
a.AddField incept, '2'
a.AddField sender , '%3%'
a.AddField title , #&now&#
a.AddField sender , 5
a.AddField content , 6
a.AddField sendtime , 7
a.AddField Flag, 8
a.AddField issend, 9
Response.Write a.ReturnSQl
gesetzt a=nichts
%>