SQL Abfrage |
29.03.2013, 12:06 | Auf diesen Beitrag antworten » | ||||||||||
InformaTiger | SQL Abfrage Hallo, ich möchte gerne in meinem Programm eine Datenbank (eine externe .accdb) auslesen. Wie mache ich das mit SQL Abfrage in C#? Ich habe hier ein Beispiel, wie ich es schon verwendet habe. Es funktioniert allerdings eben nicht.
Zur Erklärung:
Lg InformaTiger |
||||||||||
|
|||||||||||
29.03.2013, 12:55 | Auf diesen Beitrag antworten » | ||||||||||
eulerscheZahl | Habe bisher nicht mit Datenbanken gearbeitet, kann daher auch nicht viel beitragen. Was mir aufgefallen ist:
i ist entweder 0 oder 1, der Fall i==2 tritt also nie ein. |
||||||||||
29.03.2013, 13:38 | Auf diesen Beitrag antworten » | ||||||||||
InformaTiger | Ups, habe das ausgebessert funktioniert jedoch immer noch nicht ![]() Lg InformaTiger |
||||||||||
30.03.2013, 14:23 | Auf diesen Beitrag antworten » | ||||||||||
Karlito | Hallo gib mal bitte die Definitionen von aSQLBefehl und aDatenbankverbindung. Und die genaue Fehlermeldung... VG, Karlito |
||||||||||
Anzeige | |||||||||||
|
|||||||||||
30.03.2013, 19:17 | Auf diesen Beitrag antworten » | ||||||||||
Airblader |
ist sowieso völlig unsinnig. Wieso nicht gleich so (Korrektur des oben angesprochenen Fehlers eingerechnet)?
|
||||||||||
30.03.2013, 22:32 | Auf diesen Beitrag antworten » | ||||||||||
InformaTiger | @Karlito: Wenn man das wie Airblader erwähnt ausbessert kommt folgende Fehlermeldung:
Wobei ich dazu sagen muss, dass in der verbundenen Datenbank auf Spalte 2 / 16 sehr wohl Daten sind... ![]() Zur Definition von aSQLBefehl und aDatenbankverbindung:
@Airblader: Frag ich mich auch gerade... ![]() edit: desweiteren habe ich jetzt in meiner Access- Datenbank mit der ich mich im Programm verbinde, "SELECT Name, Passwort FROM Kunden" versucht und er hat mir exakt die zwei gewollten Spalten angegeben. Lg InformaTiger |
||||||||||
31.03.2013, 00:11 | Auf diesen Beitrag antworten » | ||||||||||
InformaTiger | Was mir persönlich dann noch mal mehr zu schaffen macht ist das ich so einen "auslese" Code im selben Programm schon mal geschrieben habe, er dort funktioniert und hier nicht. ![]() ![]() Dieser Code folgt:
Ich verstehe allerdings eben auch nicht woran der Fehler liegen könnte... ![]() Lg InformaTiger |
||||||||||
31.03.2013, 12:45 | Auf diesen Beitrag antworten » | ||||||||||
Airblader | Ich kenne die API dazu nicht, aber wenn sie ansatzweise der von OracleSQL unter Java ähnelt und das Query
lautet, dann sollten die obigen zwei Zeilen so ausshen:
Vielleicht aber auch mit 1 und 2 statt 0 und 1 – je nachdem, wo diese API zu zählen beginnt. Ist die Kapitalisierung von Methodennamen unter C# eigentlich Standard? Sieht in meinen Java- und Javascript-geprägten Augen fürchterlich aus. Die Namensgebung mit dem "a"-Prefix finde ich übrigens auch seltsam. Wofür soll das stehen? air |
||||||||||
31.03.2013, 13:09 | Auf diesen Beitrag antworten » | ||||||||||
InformaTiger | Leider ist mir das auch schon in den Sinn gekommen, hab das auch versucht. Leider trotzdem dieselbe Fehlermeldung. Zu dem "a"-Prefix: das ist eine Programmierkonvention an unserer Schule. Zu der Kapitalisierung von Methodennamen: Du meinst, dass die Anfangsbuchstaben des nächsten Wortes Großgeschrieben werden? Das ist auch eine Konvention unserer Schule. Ob das ansonsten so gänglich ist weiß ich nicht... Lg InformaTiger |
||||||||||
31.03.2013, 14:11 | Auf diesen Beitrag antworten » | ||||||||||
Airblader |
Nein, CamelCase ist tatsächlich ein verbreiteter Standard. Typischerweise beginnen Variablen- und Methodennamen aber mit einem Kleinbuchstaben ("readLine", "getProeprty", ...), während die Großschreibung des ersten Buchstabens für Klassen reserviert ist. Da die Schreibweise schon in den Klassen, die du verwendest, so enthalten zu sein scheint, ist es vermutlich ein C#-Standard. Zurück zum Thema. Kann es sein, dass dir noch ein aDatenset.Read(); fehlt? Der Fehler, den ich im letzten Beitrag angesprochen habe, dürfte übrigens dennoch eine Rolle spielen, d.h. da sollte dennoch 0 und 1 (bzw. 1 und 2) stehen. air P.S.: Dass du am Unterrichtsstandard nichts ändern kannst ist klar – aber gewöhne dir sinnlose Prefixes bitte nicht an. ![]() |
||||||||||
31.03.2013, 16:10 | Auf diesen Beitrag antworten » | ||||||||||
Karlito | Hallo zusammen... @Air: Groß geschriebene Methodennamen sind unter C# tatsächlich üblich. Auch sieht man oft die ungarische Notation. In der Firma, in der ich einmal gearbeitet habe, war das auch gang und gäbe (und nicht ganz mein Geschmack). Man kann sich über die Ästhetik streiten. Ich verstehe deinen Standpunkt, aber lass ihn mal selbst entscheiden ob er sich das angewöhnt... Schlussendlich entscheided oft eh dann der Chef oder der Auftraggeber über den anzuwendenden Codestyle. Aber danke für die Tipps. Es freut mich wenn das Forum hier weiter belebt wird und deine Beiträge waren bisher wertvoll. VG, Karlito |
||||||||||
31.03.2013, 17:52 | Auf diesen Beitrag antworten » | ||||||||||
Airblader | Um vielleicht einem Missverständnis entgegenzuwirken: Wenn großgeschriebene Methodennamen C#-Standard sind, so sei es. Mein "Rat", sich etwas nicht anzugewöhnen, bezog sich auf die offenbar sinnlosen "a"-Präfixe – die sind ja hoffentlich kein C#-Standard; fiele mir jedenfalls schwer, das zu glauben. ![]() In der Schule und an der Universität bekommt man leider eine ganze Menge Käse aufgetischt und Praktiken gelehrt, die mitunter seit Jahrzehnten obsolet sind, zum Beispiel der Mythos, dass guter Code möglichst viele Kommentare enthält. Allerdings ist das alles ein anderes Thema. Erstmal gucken, ob's mit dem Read-Befehl endlich tut. ![]() air |
||||||||||
31.03.2013, 19:29 | Auf diesen Beitrag antworten » | ||||||||||
InformaTiger | Sagen wir so, es funktioniert halb... ich muss jetzt noch mehrere Varianten testen und kann erst dann genaueres Bescheid geben. Aber es ist schon mal ein Ansatz zur Lösung des Problems. ![]() Lg InformaTiger |
||||||||||
31.03.2013, 20:41 | Auf diesen Beitrag antworten » | ||||||||||
InformaTiger | Hurra, es funktioniert.... ![]()
Dieser Code hat es in sich! ![]() ![]() Danke, Airblader. Danke, Karlito. Danke, eulerscheZahl. Lg InformaTiger |
||||||||||
31.03.2013, 20:59 | Auf diesen Beitrag antworten » | ||||||||||
Airblader | Super! ![]()
könnte man übrigens noch verkürzen zu
Wobei da auch die Meinungen auseinandergehen, ob sowas guter Stil ist. Schadet aber nicht, wenn man solche Dinge ab und an mal sieht. ![]() air |
||||||||||
31.03.2013, 21:16 | Auf diesen Beitrag antworten » | ||||||||||
InformaTiger | Wenn ich das so machen würde, könnte es leicht sein dass ich den Überblick verliere. ![]() Danke, nochmal für deine Hilfe. Lg InformaTiger |
|
Verwandte Themen
Die Beliebtesten » |
Die Größten » |
|
Die Neuesten » |
|