Jeg har kæmpet og kæmpet, men kommer ingen vejne
Jeg kan godt lave en Count() alene, men hvis jeg vil hente entries samtidig kager den helt ud
Håber der er en der kan hjælpe.
Dette er min kode:
public void BrugerListe()
{
try
{
SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["minConnectionString"].ConnectionString);
conn.Open();
SqlCommand cmd = conn.CreateCommand();
cmd.CommandText = "SELECT Count(ID) as CID, ID, Brugernavn, Password, Fornavn, Efternavn FROM admins";
cmd.CommandType = CommandType.Text;
SqlDataReader reader = cmd.ExecuteReader();
while (reader.Read())
{
Response.Write("<tr>");
Response.Write("<td class='BorderRight BorderBottom SolidBorderLeft'>");
Response.Write(reader["Brugernavn"]);
Response.Write("</td>");
Response.Write("<td class='BorderRight BorderBottom'>");
Response.Write(reader["Fornavn"]);
Response.Write("</td>");
Response.Write("<td class='BorderRight BorderBottom'>");
Response.Write(reader["Efternavn"]);
Response.Write("</td>");
Response.Write("<td class='BorderRight BorderBottom'>");
Response.Write("<a href='" + reader["ID"] +"'>");
Response.Write("Ret");
Response.Write("</a>");
Response.Write("</td>");
Response.Write("<td class='BorderBottom SolidBorderRight'>");
Response.Write("Slet");
Response.Write("</td>");
Response.Write("</tr>");
}
reader.Close();
conn.Close();
}
catch (Exception Fejl)
{
Response.Write("Kunne ikke få forbindelse til Databasen. Fejl: " + Fejl);
}
}
Fejlen er denne:
System.Data.SqlClient.SqlException: Column 'admins.ID' is invalid in the select list because it is not contained in either an aggregate function or the GROUP BY clause. ved System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection) ved System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection) ved System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj) ved System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj) ved System.Data.SqlClient.SqlDataReader.ConsumeMetaData() ved System.Data.SqlClient.SqlDataReader.get_MetaData() ved System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString) ved System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async) ved System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, DbAsyncResult result) ved System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method) ved System.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior behavior, String method) ved System.Data.SqlClient.SqlCommand.ExecuteReader() ved admin.BrugerListe()
Bare lige til info. Hvis jeg skriver Group by ID, så laver den bare fejlen ved næste felt "Brugernavn".
Hvis jeg grouper by "alle", så tæller den kun 1
På forhånd tak
Indlæg senest redigeret d. 13.08.2010 16:03 af Bruger #14181