Hypercell ein ] Hypercell aus ] Zeige Navigation ] Verstecke Navigation ]
c++.de  
   

Die mobilen Seiten von c++.de:
http://m.c-plusplus.de
Infos hier [BETA]

  
c++.de :: Datenbanken ::  Webanwendung mit ASP.NET und SQL Server2008 - Abfrage bringt fehler bei richtigem Ergebnis     Zeige alle Beiträge auf einer Seite Auf Beitrag antworten
Autor Nachricht
supernicky
Mitglied

Benutzerprofil
Anmeldungsdatum: 06.11.2011
Beiträge: 122
Beitrag supernicky Mitglied 17:48:28 28.04.2012   Titel:   Webanwendung mit ASP.NET und SQL Server2008 - Abfrage bringt fehler bei richtigem Ergebnis            Zitieren

Hallo zusammen,

der Titel hört sich etwas merkwürdig an aber ich komme nicht weiter..

Situation..

DB MS SQL Server 2008 Express und ASP.NET zum abfragen.
Ich möchte die DB nach einen Eintrag durchsuchen bei dem Vor- und Nachname übereinstimmen...

Dazu verwende ich die ExecuteScalar Methode, die beim ersten auffinden die Funktion beendet und (so denke ich) eine 1 als Ergebnis liefert, andernfalls 0.

SQL String:
objrs.CommandText = "SELECT [vname],[nname] FROM [bpb].[dbo].[bpb_user] WHERE [vname] = '" & mail & "' AND [nname] = '" & pass & "'"

objrs.Connection = connect

adapter.SelectCommand = objrs

adapter.SelectCommand.Connection.Open()
erg = objrs.ExecuteScalar

If erg > 0 Then

ausgabe = "Eintrag gefunden...<br />"

End If


Das Script wird tadellos ausgeführt solange die Bedingungen nicht zutreffen.. findet er aber einen Eintrag kommt folgende Fehlermeldung:

Input string was not in a correct format.
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.FormatException: Input string was not in a correct format.

Kann mir jemand einen Tipp geben??

Danke und Gruß, Nicky
Unix-Tom
Moderator

Benutzerprofil
Anmeldungsdatum: 18.07.2000
Beiträge: 10411
Beitrag Unix-Tom Moderator 07:20:57 30.04.2012   Titel:              Zitieren

http://msdn.microsoft.com ....... .sqlcommand.executescalar(v=vs.80).aspx


Wer lesen kann ist klar im Vorteil.


Select Vorname, Nachname .....

Sind 2 Werte.
Es kommt nur ein Wert zurück.
erg ist Hoffentlich dann auch ein String denn die Rückgabe wäre in einen String zu konvertieren.

_________________
Moderator für MFC, Linux, C# - NET und Datenbanken
supernicky
Mitglied

Benutzerprofil
Anmeldungsdatum: 06.11.2011
Beiträge: 122
Beitrag supernicky Mitglied 18:19:19 30.04.2012   Titel:   Lösung...            Zitieren

Hallo Tom,

gelesen habe ich... wohl nur falsch interpretiert...

Die Methode ExecuteScalar() gibt den ersten gefundenen Eintrag als String() zurück... Ich habe das etwas mit ExecuteNonQuery() verwechselt. Diese gibt die Anzahl der Änderungen zurück (Integer), aber leider nicht für Lesezugriffe, nur bei Insert und Update.

Ich prüfe nun die Länge von erg auf größer 0, dann weiß ich das ein Eintrag existiert.

Nun läuft aber alles :)

Gruß, Nicky
geeky
Mitglied

Benutzerprofil
Anmeldungsdatum: 04.05.2001
Beiträge: 6186
Beitrag geeky Mitglied 20:31:41 02.05.2012   Titel:              Zitieren

wenn dich die Spalten sowieso nicht interessieren, und du nur die Anzahl der Zeilen brauchst: Warum nicht COUNT() im sql-query + ExecuteScalar() ?
c++.de :: Datenbanken ::  Webanwendung mit ASP.NET und SQL Server2008 - Abfrage bringt fehler bei richtigem Ergebnis   Auf Beitrag antworten

Zeige alle Beiträge auf einer Seite




Nächstes Thema anzeigen
Vorheriges Thema anzeigen
Sie können Beiträge in dieses Forum schreiben.
Sie können auf Beiträge in diesem Forum antworten.
Sie können Ihre Beiträge in diesem Forum nicht bearbeiten.
Sie können Ihre Beiträge in diesem Forum nicht löschen.
Sie können an Umfragen in diesem Forum nicht mitmachen.

Powered by phpBB © 2001, 2002 phpBB Group :: FI Theme

c++.de ist Teilnehmer des Partnerprogramms von Amazon Europe S.à.r.l. und Partner des Werbeprogramms, das zur Bereitstellung eines Mediums für Websites konzipiert wurde, mittels dessen durch die Platzierung von Werbeanzeigen und Links zu amazon.de Werbekostenerstattung verdient werden kann.

Die Vervielfältigung der auf den Seiten www.c-plusplus.de, www.c-plusplus.info und www.c-plusplus.net enthaltenen Informationen ohne eine schriftliche Genehmigung des Seitenbetreibers ist untersagt (vgl. §4 Urheberrechtsgesetz). Die Nutzung und Änderung der vorgestellten Strukturen und Verfahren in privaten und kommerziellen Softwareanwendungen ist ausdrücklich erlaubt, soweit keine Rechte Dritter verletzt werden. Der Seitenbetreiber übernimmt keine Gewähr für die Funktion einzelner Beiträge oder Programmfragmente, insbesondere übernimmt er keine Haftung für eventuelle aus dem Gebrauch entstehenden Folgeschäden.