Hur gör man för att räkna poster i en access databas jag har försökt mig på en lösning men det funkar inte. Vore tascksam för all hjälp jag kan få. count tillhör recordsetet Jaha, men hur ska jag skriva då för att det ska funka? if rs("count") = 6 Then Om jag skriver: Om du vill använda namnet count (vilket är ett reserverat ord och troligen inte fungerar) skriver du såhär: Fasen man blir blind....såg inte att du glömt AS något... Nu får jag ett annat felmeddelande som lyder: Det är lugnt Putte, jag hade ju också missat det... ;) Du kan nog inte ha TOP 1 i en DELETE-sats, testa såhär istället: Du kan räkna rader i databasen genom att använda Recordcount som är ett objekt tillhörande Recordset.Räkna poster i en access databas?
<code>
<%
Set Connect = Server.CreateObject("ADODB.Connection")
Set rs = Server.CreateObject("ADODB.Recordset")
Connect.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" & Server.MapPath("/roos/text/wiktors_db/db2002.mdb")
SQL = "SELECT COUNT(*) FROM [artiklar]"
rs.Open SQL, Connect, 1, 2
If COUNT = 6 Then
Set objRecSet = objConnect.Execute("DELETE TOP 1 * FROM artiklar ORDER BY ID DESC")
End if
Set Upload = Server.CreateObject("Persits.Upload.1")
Upload.SaveVirtual("/roos/bilder/")
rubrik1 = Upload.Form("rubrik1")
text1 = Upload.Form("text1")
rubrik2 = Upload.Form("rubrik2")
text2 = Upload.Form("text2")
datum = date
On Error Resume Next
For Each File in Upload.Files
File.ToDatabase "driver={Microsoft Access Driver (*.mdb)};dbq=" & Server.MapPath("/roos/text/wiktors_db/db2002.mdb"), "INSERT INTO image (bild) values(?)"
if Err <> 0 Then
Response.Write "Error saving the file: " & Err.Description
Else
File.Delete
Response.Write ""
End If
Next
Set Connect = Server.CreateObject("ADODB.Connection")
Set rs = Server.CreateObject("ADODB.Recordset")
Connect.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" & Server.MapPath("/roos/text/wiktors_db/db2002.mdb")
SQL = "SELECT * FROM artiklar"
rs.Open SQL, Connect, 1, 2
rs.AddNew
rs("rubrik1")= rubrik1
rs("text1")= text1
rs("rubrik2")= rubrik2
rs("text2")= text2
rs("datum")= date
rs.Update
rs.Close
Response.Write "Antal poster = " & COUNT
%>
</code>
Mvh
//JWSv: Räkna poster i en access databas?
rs("count") skall det vara...
//PutteSv: Räkna poster i en access databas?
//JWSv: Räkna poster i en access databas?
'.........................
End if
Response.Write "Antal poster = " & rs("count")
//PutteSv: Räkna poster i en access databas?
<code>
If rs("count") = 6 Then
..........
End If
Response.Write "Antal poster = " & rs("count")
</code>
Så får jag följande fel:
ADODB.Recordset error '800a0cc1'
Item cannot be found in the collection corresponding to the requested name or ordinal.
/roos/text/wadmin/artikel_admin_reg.asp, line 9
Mvh
/JWSv: Räkna poster i en access databas?
SQL = "SELECT COUNT(*) AS count FROM [artiklar]"
Byt istället till något annat, t.ex. antal:
SQL = "SELECT COUNT(*) AS Antal FROM [artiklar]"
och sedan
If rs("antal") = 6 Then
/JohanSv: Räkna poster i en access databas?
sorry...
//PutteSv: Räkna poster i en access databas?
Microsoft OLE DB Provider for ODBC Drivers error '80040e14'
[Microsoft][ODBC Microsoft Access Driver] Syntax error in DELETE statement.
/roos/text/wadmin/artikel_admin_reg.asp, line 11
Jag antar att det har att göra med:
Set objRecSet = Connect.Execute("DELETE TOP 1 * FROM artiklar ORDER BY ID DESC")
Men var ligger felet?
//JWSv: Räkna poster i en access databas?
//JWSv: Räkna poster i en access databas?
Connect.Execute "DELETE FROM artiklar WHERE ID = (SELECT MAX(ID) FROM artiklar)"
/JohanSv: Räkna poster i en access databas?
<code>
<% Dim Conn, Rs
Set Conn = Server.CreateObject("ADODB.Connection")
Set Rs = Server.CreateObject("ADODB.Recordset")
Conn.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("databas.mdb") & ";pwd=;"
strSQL = "Select * From tabell"
Rs.Open strSQL, Conn
Dim Antal
Antal = Rs.Recordcount
Rs.Close
Set Rs = Nothing
Conn.Close
Set Conn = Nothing %>
Antal poster i databasen: <%=Antal%>
</code>
Så där!