Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

SQL Eintrag auf Existenz abfragen

Frage Entwicklung Datenbanken

Mitglied: CrazyD

CrazyD (Level 1) - Jetzt verbinden

06.04.2010 um 14:46 Uhr, 12257 Aufrufe, 11 Kommentare

Hallo zusammen,

Ich möchte überprüfen ob in einer Spalte ein bestimmter Eintrag vorhanden ist.
Bisher sind alle meine versuche mit der "EXISTS" Funktion gescheitert.

Vielen Dank im vorraus für eure Antworten!

MfG
CrazyD
Mitglied: lobotomie
06.04.2010 um 14:51 Uhr
An und für sich wird für EXISTS (subquery) ein boolescher Wert für die Existenz von Resultaten aus der subquery zurückgegeben.

loco Lobo
Bitte warten ..
Mitglied: CrazyD
06.04.2010 um 14:56 Uhr
Ich programmiere diese Datenbank über Visual C# und kann diesen Wert beim debuggen leider nirgendwo finden.
Bzw weiß ich nicht wie ich abfragen kann
Bitte warten ..
Mitglied: Biber
06.04.2010 um 14:59 Uhr
Moin KratziD,

willkommen im Forum.

Rückfragen:
a) heißt deine Datenbank mySQL oder DB2 oder Access oder Krups 3-Mix oder weiss es niemand genau?
b) Welche ganzen Versuche sind gescheitert und mit welcher Fehlermeldung?
c) hast du auch heute das Gefühl, es fühlt sich wie ein gatesverdammter Montach an?

Grüße
Biber
Bitte warten ..
Mitglied: lobotomie
06.04.2010 um 15:07 Uhr
Es gibt verschiedene Möglichkeiten zu überprüfen, ob eine Spalte in einer Tabelle einen bestimmten Wert enthält.
Die einfachste, meistbenutzte und effizienteste ist sicherlich die Where Klausel in SQL, also

01.
SELECT * FROM Tabelle WHERE wert = beispielwert
Bitte warten ..
Mitglied: CrazyD
06.04.2010 um 15:09 Uhr
a) mysql

b) in der Form1.cs: (im try, catch Block)
sqlcom.Select("ID", BarcodeId);
sqlcom.cmd.ExecuteNonQuery();

in der sqlcom.cs:
cmd = new SqlCommand("SELECT " + Spalte + " FROM mysql_DB1 WHERE EXISTS (SELECT "+ Spalte +" FROM mysql_DB1 WHERE " + Spalte + " = " + Zeile + ")", conn);

Fehlermeldung kommt keine.

c) ja


Mein Programm läuft einfach weiter, egal ob der Eintrag vorhanden ist oder nicht.
Wenn der Eintrag nicht vorhanden ist, soll das Prog eine dem enstprechende Meldung bringen.
Bitte warten ..
Mitglied: Dani
06.04.2010 um 15:21 Uhr
Zitat von Biber:
c) hast du auch heute das Gefühl, es fühlt sich wie ein gatesverdammter Montach an?
Jaaaaaaaaaaaaaaaaaaaaaaaaaaa
Bitte warten ..
Mitglied: SlainteMhath
06.04.2010 um 15:28 Uhr
Moin,

das:
sqlcom.cmd.ExecuteNonQuery();
ist schon mal ein grundliegender Fehler, da ein "NonQuery" per definition niemals etwas zurück gibt.


ansonsten würde ich das so abfragen:
01.
SELECT COUNT(*) as c FROM mysql_DB1 WHERE " +Spalte+" ="+Zeile
wenn c>0 dann existier die zeile.

lg,
Slainte
Bitte warten ..
Mitglied: Xpl0iT
06.04.2010 um 15:31 Uhr
c) hast du auch heute das Gefühl, es fühlt sich wie ein gatesverdammter Montach an?

Wie muss man das jetzt verstehen? :D ... Warum gatesverdammt?
Bitte warten ..
Mitglied: CrazyD
06.04.2010 um 15:31 Uhr
Was kann ich statt "NonQuery" nehmen? Hab da nicht viel Möglichkeiten.
Bitte warten ..
Mitglied: SlainteMhath
06.04.2010 um 15:40 Uhr
Was kann ich statt "NonQuery" nehmen? Hab da nicht viel Möglichkeiten.
Für Einzelwerte i.d.R. ExecuteScalar oder sowas in der art. (Ich kenn weder C# noch die mySQL API von .NET) Musst Du mal in der Doku nachlesen

/edit: typos
Bitte warten ..
Mitglied: CrazyD
06.04.2010 um 15:55 Uhr
Vielen Dank! Werd mich da mal dahinter klemmen.
Bitte warten ..
Ähnliche Inhalte
Datenbanken
SQL - Abfragen Nachfrage (2)

Frage von PronMaster zum Thema Datenbanken ...

Datenbanken
2 SQL Abfragen verbinden

Frage von cuxmini zum Thema Datenbanken ...

Monitoring
gelöst Nagios Plugin Datum in Dateiname abfragen (2)

Frage von itazubii zum Thema Monitoring ...

Windows Server
Status RDP Session via Webseite abfragen (1)

Frage von NetMare zum Thema Windows Server ...

Heiß diskutierte Inhalte
Exchange Server
gelöst Email in Exchange an 2ten Empfänger senden (18)

Frage von MultiStorm zum Thema Exchange Server ...

Weiterbildung
Gehaltsvorstellungen (16)

Frage von SYS64738 zum Thema Weiterbildung ...

Windows Server
gelöst Microsoft-Lizenz CALs und passendes Server-Betriebssystem (13)

Frage von planetIT2016 zum Thema Windows Server ...

Verschlüsselung & Zertifikate
gelöst Festplattenverschlüsselung im Ausland (13)

Frage von Nicolaas zum Thema Verschlüsselung & Zertifikate ...