Avatar billede mothwe Nybegynder
13. december 2004 - 14:32 Der er 21 kommentarer og
1 løsning

select top 3

Hvad er der lige galt her?

Jeg får ingen fejl, men til gengæld trækker den heller ikke noget ud af min databasen - selvom den burde!


Set Conn = Server.CreateObject("ADODB.Connection")
conn.Provider="Microsoft.Jet.OLEDB.4.0"
conn.Open "d:\home\region21.net\database\nyheder.mdb"

SQLstmt = "SELECT TOP 3 * FROM nyhed WHERE dansk=1 ORDER BY nyhed.dato DESC , nyhed.ID DESC;"

Conn.Execute (SQLstmt)

Set rs = conn.Execute(SQLstmt)
Avatar billede tjaz Nybegynder
13. december 2004 - 14:36 #1
du har en Conn.Execute (SQLstmt) for meget... ved ikke om det kan være det ... prøv:

SQLstmt = "SELECT TOP 3 * FROM nyhed WHERE dansk=1 ORDER BY nyhed.dato, nyhed.ID DESC;"

Set rs = conn.Execute(SQLstmt)
Avatar billede tjaz Nybegynder
13. december 2004 - 14:36 #2
fjernede lige det ene DESC dem var der nemlig også 2 af :)
Avatar billede mothwe Nybegynder
13. december 2004 - 14:41 #3
Hjalp ikke :(
Avatar billede baitianlong Nybegynder
13. december 2004 - 14:41 #4
WHERE dansk='1' :)
Avatar billede tjaz Nybegynder
13. december 2004 - 14:42 #5
hvordan ser det ud der hvor du udskriver dine data ?
Avatar billede mothwe Nybegynder
13. december 2004 - 14:44 #6
legende.dk> Det virkede heller ikke.

tjaz> her er hele min kode:

Set Conn = Server.CreateObject("ADODB.Connection")
conn.Provider="Microsoft.Jet.OLEDB.4.0"
conn.Open "d:\home\region21.net\database\nyheder.mdb"

SQLstmt = "SELECT TOP 3 * FROM nyhed WHERE dansk=1 ORDER BY nyhed.dato DESC, nyhed.ID DESC;"

Conn.Execute (SQLstmt)

Set rs = conn.Execute(SQLstmt)

  DO WHILE NOT rs.EOF
    overskrift = rs("overskrift")
    manchet = Replace(rs("manchet"), vbcrlf, "<BR>" & vbcrlf)
    dato = rs("dato")
    id = rs("id")

    %>

<A HREF="nyhed.asp?id=<%=id%>"><B><%=overskrift%></B></A><BR>
<FONT SIZE="1" COLOR="#999999"><%=dato%></FONT><BR>
<%=manchet%><BR>
<BR>

      <%
    rs.MoveNext
  LOOP
  RS.Close
  Conn.Close
Avatar billede mugs Novice
13. december 2004 - 14:45 #7
"SELECT TOP 3 Tabel1.nr, Tabel1.felt1, Tabel1.tid FROM Tabel1 ORDER BY Tabel1.nr DESC"

Denne bruger jeg i en ren Access database. M.h.t. internettet er jeg helt blank.
Avatar billede baitianlong Nybegynder
13. december 2004 - 14:45 #8
Nogen gange skriver du conn med lille og andre gange med stort C. Det er et problem.
Avatar billede baitianlong Nybegynder
13. december 2004 - 14:47 #9
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Provider="Microsoft.Jet.OLEDB.4.0"
Conn.Open "d:\home\region21.net\database\nyheder.mdb"

SQLstmt = "SELECT TOP 3 * FROM nyhed WHERE dansk='1' ORDER BY nyhed.dato DESC, nyhed.ID DESC;"

Set rs = Conn.Execute(SQLstmt)

  DO WHILE NOT rs.EOF
    overskrift = rs("overskrift")
    manchet = Replace(rs("manchet"), vbcrlf, "<BR>" & vbcrlf)
    dato = rs("dato")
    id = rs("id")

    %>

<A HREF="nyhed.asp?id=<%=id%>"><B><%=overskrift%></B></A><BR>
<FONT SIZE="1" COLOR="#999999"><%=dato%></FONT><BR>
<%=manchet%><BR>
<BR>

      <%
    rs.MoveNext
  LOOP
  RS.Close
  Conn.Close
Avatar billede mothwe Nybegynder
13. december 2004 - 14:49 #10
legende.dk> hvis jeg sætter din kode ind, så får jeg "Data type mismatch in criteria expression."
Avatar billede baitianlong Nybegynder
13. december 2004 - 14:50 #11
hmm, så skal de '' måske ikke være der i access. Men din conn/Conn skal være den samme :)
Avatar billede mugs Novice
13. december 2004 - 14:51 #12
Hvis det drejer sig om et numerisk felt, skal der i Access ikke være '' omkring kriteriet.
Avatar billede mothwe Nybegynder
13. december 2004 - 14:52 #13
Det meget mærkelige er at min kode HAR virket - da jeg benyttede en anden sti til db'én (vha. mappath) - men denne understøttes ikke længere af webhotellet! Jeg fatter ikke hvad der er gået galt?
Avatar billede mothwe Nybegynder
13. december 2004 - 14:52 #14
mugs> det er et sandt/falsk felt (1 elle 0)!
Avatar billede tjaz Nybegynder
13. december 2004 - 14:53 #15
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Provider="Microsoft.Jet.OLEDB.4.0"
Conn.Open "d:\home\region21.net\database\nyheder.mdb"

SQLstmt = "SELECT TOP 3 * FROM nyhed WHERE dansk='1' ORDER BY nyhed.dato, nyhed.ID DESC"
Set rs = Conn.Execute(SQLstmt)

Do
    overskrift = rs("overskrift")
    manchet = Replace(rs("manchet"), vbcrlf, "<BR>" & vbcrlf)
    dato = rs("dato")
    id = rs("id")
%>
<A HREF="nyhed.asp?id=<%=id%>"><B><%=overskrift%></B></A><BR>
<FONT SIZE="1" COLOR="#999999"><%=dato%></FONT><BR>
<%=manchet%><BR>
<BR>
<%
rs.MoveNext
Loop While Not rs.EOF
RS.Close
Conn.Close
%>
Avatar billede tjaz Nybegynder
13. december 2004 - 14:53 #16
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Provider="Microsoft.Jet.OLEDB.4.0"
Conn.Open "d:\home\region21.net\database\nyheder.mdb"

SQLstmt = "SELECT TOP 3 * FROM nyhed WHERE dansk = True ORDER BY nyhed.dato, nyhed.ID DESC"
Set rs = Conn.Execute(SQLstmt)

Do
    overskrift = rs("overskrift")
    manchet = Replace(rs("manchet"), vbcrlf, "<BR>" & vbcrlf)
    dato = rs("dato")
    id = rs("id")
%>
<A HREF="nyhed.asp?id=<%=id%>"><B><%=overskrift%></B></A><BR>
<FONT SIZE="1" COLOR="#999999"><%=dato%></FONT><BR>
<%=manchet%><BR>
<BR>
<%
rs.MoveNext
Loop While Not rs.EOF
RS.Close
Conn.Close
%>
Avatar billede mugs Novice
13. december 2004 - 14:55 #17
Sand / falsk = Numerisk
Avatar billede tjaz Nybegynder
13. december 2004 - 14:58 #18
så er det så bare den første af de 2 jeg sendte han skal bruge
Avatar billede mothwe Nybegynder
13. december 2004 - 14:58 #19
tjaz> jeg skulle bare ændre dansk=1 til dansk=true i min oprindelige kode! Me hvorfor HAR min kode virket indtil for en uge siden ??? Meget underligt!
Avatar billede tjaz Nybegynder
13. december 2004 - 15:02 #20
Godt spørgsmål ... for hvis det hele tiden har været en sandt/falsk skal du bruge True/False og så kan jeg slet ikke forstå at den har virket i første omgang, medmindre at du har lavet den om til Sandt/Falsk fra Numerisk 0/1
Avatar billede mothwe Nybegynder
13. december 2004 - 15:05 #21
Jeg har ikke lavet noget om - men måske er der andre der har haft deres fedtede fingre i min kode. Under alle omstændigheder virker det nu - så tak for hjælpen!
Avatar billede tjaz Nybegynder
13. december 2004 - 15:07 #22
np :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester