Encontrei pesquisando informações na Internet, mas encontrei alguns problemas durante a depuração. Após algumas modificações, ainda existem alguns problemas, mas pode ser usado para uso geral. A questão do tipo de dados e a diferença entre o SQL Server e o acesso não foram consideradas. Vou melhorá-lo quando tiver tempo no futuro. Se alguém melhorar, por favor me envie uma cópia.
Copie o código do código da seguinte forma:
<%
classeSQLString
'************************************
'Definição de variável
'************************************
'sTableName ---- nome da tabela
'iSQLType ----Tipo de instrução SQL: 0-adicionar, 1-atualizar, 2-excluir, 3-consulta
'sWhere ---- condição
'sOrder ---- método de classificação
'sSQL ---- valor
Privado sTableName,iSQLType,sWhere,sOrder,sSQL
'************************************
'Inicialização/fim da classe
'************************************
Subclasse Privada_Initialize()
nomeDaTabela=""
iSQLType=0
sOnde=""
sOrdem=""
SQL=""
Finalizar sub
Subclasse Privada_Terminate()
Finalizar sub
'************************************
'propriedade
'************************************
'Define as propriedades do nome da tabela
Propriedade pública Let TableName(valor)
sTableName = valor
Propriedade final
'Definir condições
Propriedade Pública Deixe Onde (valor)
sOnde=valor
Propriedade final
'Definir método de classificação
Propriedade Pública Deixe Ordem (valor)
sOrdem=valor
Propriedade final
'Define o tipo de declaração de consulta
Propriedade pública Let SQLType(valor)
iSQLType=valor
selecione o caso iSQLType
caso 0
sSQL="inserir em {&*#}0 ({&*#}1) valores ({&*#}2)"
caso 1
sSQL="atualização {&*#}0 conjunto {&*#}1={&*#}2"
caso 2
sSQL="excluir de {&*#}0 "
caso 3
sSQL="selecione {&*#}1 de {&*#}0"
final selecionar
Propriedade final
'************************************
'função
'************************************
'Adicionar campo (nome do campo, valor do campo)
Public Sub AddField(sFieldName,sValue)
selecione o caso iSQLType
caso 0
sSQL=replace(sSQL,"{&*#}1",sFieldName & ",{&*#}1")
sSQL=replace(sSQL,"{&*#}2","" & sValue & ",{&*#}2")
caso 1
sSQL=replace(sSQL,"{&*#}1",sFieldName)
sSQL=replace(sSQL,"{&*#}2","" & sValue & ",{&*#}1={&*#}2")
caso 3
sSQL=replace(sSQL,"{&*#}1",sFieldName & ",{&*#}1")
Finalizar seleção
Finalizar sub
'Função modificada que retorna um valor de string
'Retorna instrução SQL
Função pública ReturnSQL()
sSQL=replace(sSQL,"{&*#}0",sTableName)
selecione o caso iSQLType
caso 0
sSQL=substituir(sSQL,"",{&*#}1","")
sSQL=substituir(sSQL,"",{&*#}2","")
caso 1
sSQL=replace(sSQL,",{&*#}1={&*#}2","")
caso 3
sSQL=substituir(sSQL,"",{&*#}1","")
final Selecionar
se sWhere<>"" e iSQLType<>0 então
sSQL=sSQL & "onde" & sOnde
terminar se
se sOrder<>"" e iSQLType<>0 então
sSQL=sSQL & "ordenar por" & sOrder
terminar se
RetornoSQL=sSQL
Função final
'Retorna instrução SQL
Função pública ReturnSQL1()
sSQL=replace(sSQL,"{&*#}0",sTableName)
selecione o caso iSQLType
caso 0
sSQL=substituir(sSQL,"",{&*#}1","")
sSQL=substituir(sSQL,"",{&*#}2","")
caso 1
sSQL=replace(sSQL,",{&*#}1={&*#}2","")
caso 3
sSQL=substituir(sSQL,"",{&*#}1","")
final Selecionar
se sWhere<>"" e iSQLType<>0 então
sSQL=sSQL & "onde" & sOnde
terminar se
se sOrder<>"" e iSQLType<>0 então
sSQL=sSQL & "ordenar por" & sOrder
terminar se
RetornoSQL=sSQL
Função final
'Declaração clara
SubClear público()
nomeDaTabela=""
iSQLType=0
sOnde=""
sOrdem=""
SQL=""
Finalizar sub
Fim da aula
%>
Exemplo de chamada:
<%
set a =new SQLString 'Criar objeto de classe
a.TableName=" mensagem " 'Defina o nome da tabela como mensagem
'a.where="issend =9"
'a.order="enviar descrição"
a.SQLType=0 'Defina o tipo de consulta para adicionar registros
a.AddField "incept", "'2'"
a.AddField " remetente ", "'%3%' "
a.AddField "título", "#"&agora&"#"
a.AddField "remetente", "5"
a.AddField "conteúdo", "6"
a.AddField "hora de envio", "7"
a.AddField "sinalizador", 8
a.AddField "issend", 9
Resposta.Write a.ReturnSQl
definir a = nada
%>
<%
set a =new SQLString 'Criar objeto de classe
a.TableName=" mensagem " 'Defina o nome da tabela como mensagem
'a.where="issend =9"
'a.order="enviar descrição"
a.SQLType=0 'Defina o tipo de consulta para adicionar registros
a.AddField "incept", "'2'"
a.AddField " remetente ", "'%3%' "
a.AddField "título", "#"&agora&"#"
a.AddField "remetente", "5"
a.AddField "conteúdo", "6"
a.AddField "hora de envio", "7"
a.AddField "sinalizador", 8
a.AddField "issend", 9
Resposta.Write a.ReturnSQl
definir a = nada
%>
<%
set a =new SQLString 'Criar objeto de classe
a.TableName=" mensagem " 'Defina o nome da tabela como mensagem
'a.where="issend =9"
'a.order="enviar descrição"
a.SQLType=0 'Defina o tipo de consulta para adicionar registros
a.AddField "incept", "'2'"
a.AddField " remetente ", "'%3%' "
a.AddField "título", "#"&agora&"#"
a.AddField "remetente", "5"
a.AddField "conteúdo", "6"
a.AddField "hora de envio", "7"
a.AddField "sinalizador", 8
a.AddField "issend", 9
Resposta.Write a.ReturnSQl
definir a = nada
%>