03. maj 2004 - 14:20
Der er
26 kommentarer og 2 løsninger
Database spm.
Hej. Jeg har to scripts som laver udtræk fra en db med IP numre. Et som sorterer efter "target" og ét der sorterer efter "source" ,men det virker ikke ... den viser det samme uanset om jeg vælger source eller target... har prøvet at lave en test db hvor det virker på. Det har også virket på min db... bare ikke mere... hvad går der galt ? target.asp : <% if session("login") = "" Then Response.redirect("login.asp") end if %> <!--#include file="connectj.asp"--> <% SQL = "select * from ip order by target, source" Set rs=MyConn.Execute(SQL) %> <HTML> <HEAD> <style type="text/css"> body { background-color: #FFFFFF; font-family: Verdana; font-size: 12px; font-weight: bold; } table { font-family: Verdana; font-size: 12px; } </STYLE> </HEAD> <BODY link="#000000" vlink="#000000" alink="#000000"> <TABLE BORDER="0" CELLPADDING="2" CELLSPACING="1" WIDTH="100%" Valign="Top"> <TR> <TD valign="top" width="280"> <center> <br><img src="logo.gif"><br> <a href="logout.asp"><font face="Verdana" size="1">LOG AF</font></a> <br> <br> <br> <br> <center> </TD> <td valign="top"> <table width="40%" cellspacing="0" cellpadding="4" STYLE="border-collapse : collapse"> <% oldSource = "" do while not rs.EOF if oldSource <> rs("target") then oldSource = rs("target") %> <tr><td colspan="3" style="border:solid 1px black;" bgcolor="#c0c0c0"> <font face="Verdana" size="2"><b><% = rs("target")%></b></font></td></tr> <tr> <td style="border-bottom:solid 1px #F2F2F2;" style="border-left:solid 1px black;" bgcolor="#f0f0f0"> <center><font face="Verdana" size="1">source</font></td> <td style="border-bottom:solid 1px #F2F2F2;"> <center><font face="Verdana" size="1">packets</font></td> <td style="border-bottom:solid 1px #F2F2F2;" style="border-right:solid 1px black;"> <center><font face="Verdana" size="1">bytes</font></td></tr> <% end if %> <tr> <td style="border-left:solid 1px black;" bgcolor="#f0f0f0"><font face="Verdana" size="1"><% = rs("source") %></font></td> <td><center><font face="Verdana" size="1"><p align="right"><% = rs("packets") %></font></p></td> <td style="border-right:solid 1px black;"><center><font face="Verdana" size="1"><p align="right"><% = rs("bytes") %></font></p></td> </tr> <% rs.MoveNext loop %> </table> </td> </TR> </TABLE> <% rs.Close Set rs = Nothing %> </BODY> </HTML> DB struktur : target, source, bytes, packets, id(autonum.)
Annonceindlæg fra Infor
Ingen... men resultatet jeg får på de to sider er identiske... det er som om den gemmer resultatet fra den første side... target.asp : <% SQL = "select * from ip order by target, source" Set rs=MyConn.Execute(SQL) %> source.asp : <% SQL = "select * from ip order by source, target" Set rs=MyConn.Execute(SQL) %>
det du viser her sorterer efter target, og hvis der er to ens targets så bliver de to sorteret efter source jeg går ud fra at den anden fil vil bruge SQL = "select * from ip order by source, target" ok?
Jeg får hele tiden resultat af source søgningen ...
Prøv dette: Target: SQL = "SELECT * FROM IP ORDER BY target" Source: SQL = "SELECT * FROM IP ORDER BY source" Giver dette nogen forskel ? /Rajo ps. hvilken database bruger du ?
Det har jeg prøvet... ingen forskel... Access DB. ... det gi'r bare ingen mening fordi det HAR virket for noget tid siden...
Er det én tabel eller flere ?
Der er kun én tabel ... [ip]
hvilket felter har du i den, og hvilken type er de ?
Prøv evt. at vende den om.... f.eks. SELECT * FROM IP ORDER BY target, source DESC Virker dette ??
Nej... jeg har også prøvet at lave den ene til ASC og den anden til DESC ... ingen forskel... ???
Og du har selvfølig tjekket at der er ikke står de samme data i dem begge ?? ;o)
Ja... det gør der ikke... *S*
Virker din SQL sætning i Access ?? Laver den så ORDER på den rigtige måde ?
Ehh... jeg har ikke prøvet at lave sætningen i access... er længe siden jeg har lavet forespørgsler i den... hvordan skriver jeg det ?
Det vil den ikke.......Lorte prog. :o)
Prøv lige at poste hele din kode til source.asp og target.asp
Source : <% if session("login") = "" Then Response.redirect("login.asp") end if %> <!--#include file="connectj.asp"--> <% SQL = "SELECT * FROM IP ORDER BY source, target DESC" Set rs=MyConn.Execute(SQL) %> <HTML> <HEAD> <style type="text/css"> body { background-color: #FFFFFF; font-family: Verdana; font-size: 12px; font-weight: bold; } table { font-family: Verdana; font-size: 12px; } </STYLE> </HEAD> <BODY link="#000000" vlink="#000000" alink="#000000"> <TABLE BORDER="0" CELLPADDING="2" CELLSPACING="1" WIDTH="100%" Valign="Top"> <TR> <TD valign="top" width="280"> <center> <br><img src="logo.gif"><br> <a href="logout.asp"><font face="Verdana" size="1">LOG AF</font></a> <br> <br> <br> <br> <center> </TD> <td valign="top"> <table width="40%" cellspacing="0" cellpadding="4" STYLE="border-collapse : collapse"> <% oldSource = "" do while not rs.EOF if oldSource <> rs("source") then oldSource = rs("source") %> <tr><td colspan="3" style="border:solid 1px black;" bgcolor="#F3CAA9"> <font face="Verdana" size="2"><b><% = rs("source")%></b></font></td></tr> <tr> <td style="border-bottom:solid 1px #F2F2F2;" style="border-left:solid 1px black;" bgcolor="#f0f0f0"> <center><font face="Verdana" size="1">target</font></td> <td style="border-bottom:solid 1px #F2F2F2;"> <center><font face="Verdana" size="1">packets</font></td> <td style="border-bottom:solid 1px #F2F2F2;" style="border-right:solid 1px black;"> <center><font face="Verdana" size="1">bytes</font></td></tr> <% end if %> <tr> <td style="border-left:solid 1px black;" bgcolor="#f0f0f0"><font face="Verdana" size="1"><% = rs("target") %></font></td> <td><center><font face="Verdana" size="1"><p align="right"><% = rs("packets") %></font></p></td> <td style="border-right:solid 1px black;"><center><font face="Verdana" size="1"><p align="right"><% = rs("bytes") %></font></p></td> </tr> <% rs.MoveNext loop %> </table> </td> </TR> </TABLE> <% rs.Close Set rs = Nothing %> </BODY> </HTML> Target : <% if session("login") = "" Then Response.redirect("login.asp") end if %> <!--#include file="connectj.asp"--> <% SQL = "SELECT * FROM IP ORDER BY target, source ASC" Set rs=MyConn.Execute(SQL) %> <HTML> <HEAD> <style type="text/css"> body { background-color: #FFFFFF; font-family: Verdana; font-size: 12px; font-weight: bold; } table { font-family: Verdana; font-size: 12px; } </STYLE> </HEAD> <BODY link="#000000" vlink="#000000" alink="#000000"> <TABLE BORDER="0" CELLPADDING="2" CELLSPACING="1" WIDTH="100%" Valign="Top"> <TR> <TD valign="top" width="280"> <center> <br><img src="logo.gif"><br> <a href="logout.asp"><font face="Verdana" size="1">LOG AF</font></a> <br> <br> <br> <br> <center> </TD> <td valign="top"> <table width="40%" cellspacing="0" cellpadding="4" STYLE="border-collapse : collapse"> <% oldSource = "" do while not rs.EOF if oldSource <> rs("target") then oldSource = rs("target") %> <tr><td colspan="3" style="border:solid 1px black;" bgcolor="#F3CAA9"> <font face="Verdana" size="2"><b><% = rs("target")%></b></font></td></tr> <tr> <td style="border-bottom:solid 1px #F2F2F2;" style="border-left:solid 1px black;" bgcolor="#f0f0f0"> <center><font face="Verdana" size="1">source</font></td> <td style="border-bottom:solid 1px #F2F2F2;"> <center><font face="Verdana" size="1">packets</font></td> <td style="border-bottom:solid 1px #F2F2F2;" style="border-right:solid 1px black;"> <center><font face="Verdana" size="1">bytes</font></td></tr> <% end if %> <tr> <td style="border-left:solid 1px black;" bgcolor="#f0f0f0"><font face="Verdana" size="1"><% = rs("source") %></font></td> <td><center><font face="Verdana" size="1"><p align="right"><% = rs("packets") %></font></p></td> <td style="border-right:solid 1px black;"><center><font face="Verdana" size="1"><p align="right"><% = rs("bytes") %></font></p></td> </tr> <% rs.MoveNext loop %> </table> </td> </TR> </TABLE> <% rs.Close Set rs = Nothing %> </BODY> </HTML>
Logger af... har fri... går på igen når jeg rammer mit domicil... :)
Er det den samme tabel du ? i ? <!--#include file="connectj.asp"--> ??
Ja... connectj.asp : <% Set MyConn = Server.CreateObject("ADODB.Connection") MyConn.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("johnny.mdb") %>
Hmm... kan det have noget at gøre med at min DB er for stor og at jeg skal connecte på en anden måde ? Jeg fik det jo til at virke hvor jeg lavede en testDB med kun 7-8 poster ???
har du indexer på tabellerne? Det vil der være hvis du har lavet en primær nøgle. Du bør have sat ID til at være Primær nøgle
Kurser inden for grundlæggende programmering