Avatar billede alx1 Nybegynder
09. april 2004 - 00:29 Der er 5 kommentarer og
1 løsning

Database sum

Jeg har brug for at finde en SUM, men kan ikke lige gennemskue hvordan jeg får mit resultat castet til min int variabel pladser ?

string query="SELECT SUM (AntalPersoner) FROM Reservation] WHERE Rejsenavn = '"+enRejse.RejseNavn+"'";
      OleDbConnection  dbConn;
      OleDbCommand    dbCmd = new OleDbCommand();
      OleDbDataReader  tmpRead;
      dbConn = new OleDbConnection(sCon);
      dbConn.Open();
      dbCmd.CommandText = query;
      dbCmd.Connection = dbConn;
      tmpRead = dbCmd.ExecuteReader();

      int pladser=tmpRead[ ???
Avatar billede arne_v Ekspert
09. april 2004 - 00:34 #1
int pladser = (int)tmpRead[0];

bør gøre det.
Avatar billede arne_v Ekspert
09. april 2004 - 00:36 #2
Overvej evt. ExecuteScalar i.s.f. ExecuteReader.

int pladser = (int)db.Cmd.ExecuteScalar();
Avatar billede arne_v Ekspert
09. april 2004 - 00:36 #3
dbCmd uden punktom
Avatar billede alx1 Nybegynder
09. april 2004 - 00:45 #4
Den kommer med flgn fejl ?

Specified cast is not valid.
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

Exception Details: System.InvalidCastException: Specified cast is not valid.

Source Error:


Line 248://        pladser = int.Parse(tmpRead["AntalPersoner"].ToString());
Line 249://      int pladser = (int)tmpRead[0];
Line 250:      int pladser = (int)dbCmd.ExecuteScalar();
Line 251:/*
Line 252:      query="SELECT DISTINCT MaxPladser from [Rejse] where Rejsenavn = '"+enRejse.RejseNavn+"'";
Avatar billede arne_v Ekspert
09. april 2004 - 00:55 #5
int pladser = (int)(double)dbCmd.ExecuteScalar();
Avatar billede arne_v Ekspert
09. april 2004 - 00:55 #6
Ser fjollet ud men det virker - af en eller anden grund returneres SUM af en
integer kolonne som double.
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
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

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