Recomendado: Fale sobre escrever código semelhante às funções do mecanismo de pesquisa usando asp Primeiro, crie um banco de dados de acesso. Existe uma tabela URLIndex na biblioteca, onde os campos de URL e palavras -chave são indexadas, respectivamente, da seguinte forma: a seguir é o conteúdo referenciado: URL Text (índice
Existem muitas categorias de operação de banco de dados pesquisando online. Não sou melhor do que esses, mas apenas os escrevi e os usei mais. Portanto, não há nada de especial em mim, eu apenas uso meus hábitos. Quanto à eficiência e outros aspectos, dê -me conselhos! !
Código do programa:
| A seguir, o conteúdo citado: <% Classe dbclass '--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 'Descrição variável 'Conn ------------------------------------------------------------------------------------------------------------------------------- 'Strsql ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ 'vtbname ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 'VPKEY -------------------------------------------------------------------------------------------------------------------------------- 'VPGFields --------- Consulte os campos a serem exibidos na página 'VPGSIZE ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 'VCURRPG ----------------------------------------------------------------------------------------------------------------------- 'Vcondições ---- Condições de paginação de consultas 'Vorderby ------------- Classificação de páginas de consulta '--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Private Conn, StrSQL, VTBName, VPKey, VPGFields, VPGSIZE, VCURRPG, VCONDITOS, VORDERBY 'Inicialização da classe Sub -classe privado_initialize () 'Quando é um banco de dados MS SQL, defina as duas variáveis a seguir Nome 'Dim DbServer' ou endereço IP do servidor de banco de dados Nome do banco de dados 'Dim DBName' Dim DBPath 'Se for um banco de dados de acesso, defina seu caminho aqui Dim dbuser 'The Login Nome de usuário do banco de dados senha de login do domínio Dim DBPass ' Dim Connstr dbpath = /testasp/data/data.mdb 'Defina o caminho do banco de dados dbuser = admin DBPass = 123456 'Se for acesso e tem uma senha Connstr = provedor = microsoft.jet.oledb.4.0; fonte de dados = & server.mappath (dbpath) & _ ; 'Se for acesso e não há senha 'Connstr = provider = Microsoft.Jet.oledb.4.0; fonte de dados = & server.mappath (dbpath) 'Se for um banco de dados MS-SQL 'Connstr = provedor = sqloledb; ID do usuário = & dbuser &; Senha = & dbpass & _ '; Catálogo inicial = & dbname &; Fonte de dados = & dbserver em erro de erro em seguida Definir Conn = Server.CreateObject (Adodb.Connection) Conn.Open Connstr Errmsg Conecte -se ao banco de dados Final sub 'Class End Sub -classe particular () Conn.Close Definir conn = nada Final sub '--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 'Defina valores para variáveis da classe '--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 'Defina instruções SQL Propriedade pública Let SQLSTR (valores BYVAL) strSQL = valores Propriedade final 'Defina o nome da tabela da página de consulta Propriedade pública Let Tbname (valores BYVAL) vtbname = valores propriedade final '--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 'Defina a chave primária da tabela de paginação de consulta Propriedade pública Let Pkey (valores BYVAL) VPKey = valores propriedade final '--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 'Defina os campos exibidos Propriedade pública Deixe PGFields (valores BYVAL) vpgfields = valores propriedade final '--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 'Defina o número de registros exibidos por página Propriedade pública Deixe PGSize (valores BYVAL) vpgsize = valores propriedade final '--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 'Defina o número de páginas atualmente exibidas Propriedade pública Let Currpg (valores BYVAL) vcurrpg = valores propriedade final '--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 'Defina as condições de consulta Propriedade pública Let Conditions (valores BYVAL) Se Len (valores)> 0 então VConditions = onde e valores outro vconditions = onde 1 = 1 final se propriedade final '--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 'Defina o tipo de consulta Propriedade pública Let Orderby (valores BYVAL) Se Len (valores)> 0 então Vorderby = Ordem por & valores outro Vorderby = valores final se propriedade final '--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 'Obtenha o número total de registros Propriedade pública Get VrScount () Se vcurrpg = 1 então sqlc = selecione count (& vpkey &) como iDCount de & vtbname & & vconditions Definir rsc = server.createObject (adodb.recordset) RSc.Open SQLC, Conn, 0,1 Rsnum = RSC (IdCount) rsc.close Defina RSC = nada Se rsnum> 0 então Response.Cookies (Irecord) = rsnum vrcount = rsnum outro vrcount = 0 final se outro vrscount = request.cookies (Irecord) final se propriedade final 'Obtenha o número total de páginas Propriedade pública Get VPGCount () IrsCount2 = vrScount () Se IrsCount2 mod vpgSize = 0 então vpgCount = int (irsCount2/vpgSize) outro vpgCount = int (irsCount2/vpgSize) 1 final se propriedade final 'Consulte o banco de dados Função pública rsdb () em erro de erro em seguida 'Resultados simples de consulta 'Definir rsdb = server.createObject (adodb.recordset) 'rsdb.open strsql, Conn, 1,3 Definir rsdb = Conn.Execute (StrSQL) Banco de dados de consulta ErrMSG Função final 'Adicionar, atualizar, excluir registros de banco de dados função pública updb () em erro de erro em seguida Conn.Execute (StrSQL) Errmsg Editar registros de banco de dados Função final '--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 'A função de conjunto de registros usada para implementar a paginação Função pública pagers () em erro de erro em seguida Dim Startrs startrs = (vcurrpg-1)*vpgsize '--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 'Se você usar esta instrução, precisará modificar o código de acordo com os parâmetros. Especificamente, se a classificação for ASC, então <altere para> e min é alterado para max 'Se Startrs = 0 então 'strSQL = selecione Top & VpgSize & & Vpgfields & From & Vtbname & & VConditions & & Vorderby ' outro 'strSQL = selecione Top & VpgSize & & Vpgfields & From & VtbName & & VConditions & & VPKey & < 'strsql = strsql & (selecione min (& vpkey &) de (selecione Top & Startrs & & vpkey & de 'strsql = strsql & vtbname & & vconditions & & Vorderby &) como IDTABLE) & VOrderby 'final se '--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Se Startrs = 0 então strSQL = selecione Top & VpgSize & & Vpgfields & From & Vtbname & & VConditions & & Vorderby outro strSQL = selecione Top & VpgSize & & VpGfields & From & Vtbname & & VConditions & & VPKey & não strsql = strsql & in (selecione Top & Startrs & & vpkey & From & Vtbname & & vconditions & & Vorderby strsql = strsql &) & Vorderby final se '--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- set pagers = server.createObject (adodb.recordset) pagers.open strsql, Conn, 0,1 Errmsg Record Paginação Função final '--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Função pública SQLPAGE () em erro de erro em seguida Set sqlpage = server.createObject (adodb.recordset) Set cm = server.createObject (adodb.command) CM.CommandType = 4 Cm.ActiveConnection = Conn Cm.CommandText = sp_util_page Cm.Parameters (1) = VPGFields Cm.Parameters (2) = vtbname Cm.Parameters (3) = vcondições Cm.Parameters (4) = Vorderby Cm.Parameters (5) = VPKey Cm.Parameters (6) = vcurrpg Cm.Parameters (7) = VPGSize Cm.Parameters (8) = vrsCount () Cm.Parameters (9) = sqlpage.cursorlocation = 3 sqlpage.locktype = 1 sqlpage.open cm Errmsg Record Paginação Função final '--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 'Feche o recorde de objrs '--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Função pública CRS (BYVAL OBJRS) Objrs.close () Definir objrs = nada Função final '--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Função pública Pagenav () IRSCONT = VRSCOUNT () 'Número total de registros mypage = vcurrpg'Currpg'Currpg'Current Page Count PgCount = vpgCount () 'Número total de páginas Prepage = MyPage-1 se prepage <1 então Prepage = 1 final se NextPage = MyPage 1 Se NextPage> PGCount então NextPage = PGCount final se pagest = <div id = fy> <span id = rpc> Há um total de & irscount & registros & mypage &/& pgcount & </span> pagest = pagest & <a href = '? currPage = 1' class = 'aw'> home </a> <a href = '? currPage = & prepage &' class = 'aw'> página anterior </a> if (mypage-1) mod 4 = 0 então FirstPage = MyPage elseif int ((mypage-1)/4) = 0 então primeiroPage = 1 outro primeiroPage = int ((myPage-1)/4)*4 1 final se Endpage = FirstPage 4 Astr = para i = primeiroPage para a página final Astr = Astr e <a href = '? CurrPage = & i &' se cstr (mypage) = cstr (i) então Astr = Astr & id = 'currp' final se Astr = Astr &> & i & </a> Se eu> pgCount-1, então saia para próximo Astr = Astr e <a href = '? CurrPage = & NextPage &' Class = 'Aw'> última página </a> pagest = pagest & Astr pagenav = pagest Função final 'Tabela de saída com função de paginação Função ShowTB (ByVal TBTIL) set rstb = pagers () 'Se for um procedimento armazenado, ligue para SQLPAGE () tbrs = rstb.getRows () CRS (RSTB) itblrow = ubound (tbrs, 2) itblcol = ubound (tbtil) tbstr = <tabela borda = '0' CellPacing = '0' CellPadding = '0' CellPadding = '0'> <Tbody> para r1 = 0 para itblcol tr1 = tr1 & <td width = '& split (tbtil (r1), |) (1) &'> & split (tbtil (r1), |) (0) & </td> próximo tr1 = <tr> & tr1 & </tr> Para RI = 0 para Itblrow Para IC = 0 para Itblcol td = td & <td width = '& split (tbtil (ci), |) (1) &'> & tbrs (ci, ri) & </td> próximo tr = tr & <tr> & td & </tr> td = nulo próximo Tbtil = nulo tbrs = nulo Response.write (tbstr & tr1 & tr & <tr> <td colspan = '& itblcol 1 &'> & pagenav () & </td> </tr> </tbody> </body>) tbstr = nulo tr1 = nulo tr = nulo Função final 'Imprima a instrução SQL para que a declaração verifique se houver algum erro Public Sub PRNSQL () Response.Write (StrSQL) Final sub '--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Funções tolerantes a falhas '--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Função privada errmsg (errmsg) Se err.number <> 0 então 'Se houver um problema, você pode usar o código aqui para imprimir as informações de descrição para facilitar a depuração. Comentar Response.Write (CSTR (Err.Description) & <br>) Err.clear Response.write <font color = '#ff0000'> & errmsg & error </font> 'Comentário Response.end () Final se Função final '--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 'A função de tolerância a falhas termina '--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Classe final %> |
Compartilhar: FileSystemObject Código de amostra No código de amostra descrito nesta seção, os exemplos da vida real são fornecidos para ilustrar muitos dos recursos disponíveis no padrão de objeto FileSystemObject. Este código mostra todos os recursos de como usar padrões de objeto juntos e como usá -los efetivamente em seu próprio código