webForumDet fria alternativet
Logga in / Bli medlem

SELECT (*) COUNT

.NET

3 svar · 372 visningar · startad av Topper

Medlem sedan apr. 200531 inlägg
Trådstart#1

Hej!

Vill ha en funktion som räknar antal poster i min databas. Hur gör jag detta? Vill sedan skriva ut detta i HTML-koden.

SQL-koden blir väl typ

SELECT COUNT (*) FROM X

Medlem sedan sep. 20026 425 inlägg
#2
sub page_load

dim SQL as string = "SELECT Count(kolumn) FROM tbl"
dim CnStr as string = "Provider=Microsoft.Jet.OLEDB.4.0;data source=" & Server.MapPath("db.mdb")

    'felhantering med Try .. Catch
    Try

    dim Cn as new OleDbConnection(CnStr)
        Cn.Open()
        dim Cm as new OleDbCommand(SQL,Cn)
        dim result as object

        result = Cm.ExecuteScalar()

        Cn.Close()
        lbl1.Text = CStr(result)

    'fånga felmeddelande
    Catch ex As exception
        lbl_error.Text = "Ett fel uppstod..<br />Error: " & ex.Message
    End Try

end sub

Du måste sen ha två labels på din sida:

'html, body etc.

<asp:label id="lbl_error" runat="server" />

<p><asp:label id="lbl1" runat="server" /></p>
Medlem sedan apr. 200531 inlägg
#3

OKej, Tack...fungerar utmärkt.
Men inte om jag ska ha en till som räknar en annan tabell.

Annars va det kanon.

Vill asså har två räkningsfunktioner på samma sida...

Medlem sedan sep. 20026 425 inlägg
#4
<%@ Page Language="VB" Strict="False" Debug="True" %>
<%@ import Namespace="System.Data.OleDb" %>
<script runat="server">

sub page_load
	
	dim SQL as string
	SQL = "SELECT count(tbl_posts.tid),(SELECT count(tbl_users.uid) from tbl_users) FROM tbl_posts"

	dim Cn as new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;data source=" & Server.MapPath("swedair/dbms/db_forum.mdb"))
	dim Cm as new OleDbCommand(SQL,Cn)
	dim dbRead as OleDbDataReader

	try
    
	Cn.Open()
	dbRead = Cm.ExecuteReader()

		while dbRead.Read()
			l1.text = dbRead.Item(0)
            l2.text = dbRead.Item(1)
        end while

	catch ex as exception
		l3.text = "Error!"
	finally
		dbRead.Close()
		Cn.Close
	end try

end sub

</script><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="sv" xml:lang="sv">
<head>
    <title>Test</title>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>

<body>

<p><asp:literal id="l1" runat="server" /></p>
<p><asp:literal id="l2" runat="server" /></p>
<p><asp:literal id="l3" runat="server" /></p>

</body>
</html>

/r lade till ett finally-block också. Ej fått det att fungera tidigare, men man ska deklarera variabler innan ett try..catch..finally-block! :)

279 ms totalt · 4 externa anrop · v20260731065814-full.51f67c91
145 ms — deklarationer (db)
0 ms — hämta statistik (cache)
132 ms — hämta tråd, inlägg och bilagor (db)
144 ms — ändringar (db)