tutorials.de Buch-Aktion 05/2012
ERLEDIGT
JA
ANTWORTEN
10
ZUGRIFFE
466
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    CrazyNevs CrazyNevs ist offline Mitglied
    Registriert seit
    Dec 2008
    Beiträge
    24
    Hi,
    ich habe folgenes Problem und zwar habe ich einen connecotin zur Datenbank aufgebaut, nur ich weiß nicht wie ich nun Selets ausführe bzw. diese aus ausgeben kann. Hoffe mir kann wer helfen

    P.S. Unten ist mein bisheriger Code

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    
                try
                {
                    OdbcConnection cn;
                    OdbcCommand cmd;
                    string MyString;
     
                    MyString = "Select name from buch;";
     
                    cn = new OdbcConnection("Driver={Microsoft ODBC for Oracle};Server=" + txb_server.Text + ";UID=" + txb_uname.Text + ";PWD=" + txb_pwd.Text + ";");
     
                    cmd = new OdbcCommand(MyString, cn);
                    cn.Open();
     
                    txb_sqlausgabe.Text = Convert.ToString(cmd);
                    MessageBox.Show("Sie sind erfolgreich mit der Datenbank verbunden!", "Erfolgreiche Verbindung", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    cn.Close();
                }
                catch
                {
                    MessageBox.Show("Es ist ein Verbinduns Fehler aufgetreten. Prüfen Sie bitte die Datenbank Einstellungen", "Fehler beim Verbinden", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }

    MfG CrazyNevs
     
    Rechtschreibfehler sind vorbehalten! Wer sie findet darf sie behalten.

  2. #2
    Avatar von Nico Graichen
    Nico Graichen Nico Graichen ist offline aka gemballa
    tutorials.de Moderator
    Registriert seit
    Dec 2003
    Ort
    Pulheim (NRW)
    Beiträge
    3.898
    Blog-Einträge
    34
    Hi

    Hast du dir die Klasse mal angeschaut?
    Es gibt 2 Methoden, die das Wort Execute enthalten.
    Eine davon ist für Abfragen weniger geeignet (sagt auch schon der Name NonQuery).
    Die anderen beiden sind abhängig von der erwarteten Datenmenge geeignet.
     
    Grüße Nico
    ----------------------
    Xing
    ----------------------
    Zitat Zitat von Mark Twain (1835-1910)
    Es gibt drei Dinge, die eine Frau aus dem Nichts hervorzaubern kann: einen Hut, einen Salat und einen Ehekrach.
    Zitat Zitat von Mike Wilson - Biographie über Larry Ellison (CEO Oracle)
    The Difference Between God and Larry Ellison: God Doesn't Think He's Larry Ellison

  3. #3
    CrazyNevs CrazyNevs ist offline Mitglied
    Registriert seit
    Dec 2008
    Beiträge
    24
    Hmm jein,
    hab da aber mal was ausprobiert, nur leider scheint das imemr noch nciht so zu gehn :-P

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    
    cn.Open();
                        OdbcDataReader dr = cmd.ExecuteReader();
                        // Datensätze anzeigen  
                        while (dr.Read())
                        {
                            txb_sqlausgabe.Text += dr["name"].ToString() + " \r\n";
                        }
    cn.Close();

    Zumindest weiß ich, das das Programm immer an dieser stelle abstürzt bzw. einen Exception auslöst

    Code :
    1
    
    OdbcDataReader dr = cmd.ExecuteReader();

    MfG Sven
    Geändert von CrazyNevs (22.03.09 um 21:08 Uhr)
     
    Rechtschreibfehler sind vorbehalten! Wer sie findet darf sie behalten.

  4. #4
    Avatar von Nico Graichen
    Nico Graichen Nico Graichen ist offline aka gemballa
    tutorials.de Moderator
    Registriert seit
    Dec 2003
    Ort
    Pulheim (NRW)
    Beiträge
    3.898
    Blog-Einträge
    34
    War das jetzt eine Bitte nach weiterer Hilfe?
    Dann sag uns doch noch, was für eine Exception kommt und wie die Fehlermeldung lautet!
     
    Grüße Nico
    ----------------------
    Xing
    ----------------------
    Zitat Zitat von Mark Twain (1835-1910)
    Es gibt drei Dinge, die eine Frau aus dem Nichts hervorzaubern kann: einen Hut, einen Salat und einen Ehekrach.
    Zitat Zitat von Mike Wilson - Biographie über Larry Ellison (CEO Oracle)
    The Difference Between God and Larry Ellison: God Doesn't Think He's Larry Ellison

  5. #5
    CrazyNevs CrazyNevs ist offline Mitglied
    Registriert seit
    Dec 2008
    Beiträge
    24
    Hmm klar sonst würd ich ja nicht hier schreiben Find das nur immer was dreist direkt danach zu fragen außerdem will man das ja lernen oder nicht :-P

    Naja trotzdem würd ich mich um eine Hilfe freuen.

    Hier die Exception:
    ERROR [42000] [Microsoft][ODBC driver for Oracle][Oracle]ORA-00911: Ungültiges Zeichen
     
    Rechtschreibfehler sind vorbehalten! Wer sie findet darf sie behalten.

  6. #6
    Avatar von Nico Graichen
    Nico Graichen Nico Graichen ist offline aka gemballa
    tutorials.de Moderator
    Registriert seit
    Dec 2003
    Ort
    Pulheim (NRW)
    Beiträge
    3.898
    Blog-Einträge
    34
    Hm
    Der Query ist relativ simple, aber probiers mal ohne Semikolon
     
    Grüße Nico
    ----------------------
    Xing
    ----------------------
    Zitat Zitat von Mark Twain (1835-1910)
    Es gibt drei Dinge, die eine Frau aus dem Nichts hervorzaubern kann: einen Hut, einen Salat und einen Ehekrach.
    Zitat Zitat von Mike Wilson - Biographie über Larry Ellison (CEO Oracle)
    The Difference Between God and Larry Ellison: God Doesn't Think He's Larry Ellison

  7. #7
    CrazyNevs CrazyNevs ist offline Mitglied
    Registriert seit
    Dec 2008
    Beiträge
    24
    Hmm entwieder hab ich an der falschen Stelle weggenommen oder es geht immer noch nciht

    Hab mal den relevanten Programmauschnitt gepostet

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    
    OdbcConnection cn;
                    OdbcCommand cmd;
                    string MyString;
     
                    MyString = "select name from buch"; // Semikolon im Commando entfernt
     
                    cn = new OdbcConnection("Driver={Microsoft ODBC for Oracle};Server=" + txb_server.Text + ";UID=" + txb_uname.Text + ";PWD=" + txb_pwd.Text + ";");
     
                    cmd = new OdbcCommand(MyString, cn);
                    cn.Open();
                    try
                    {
                        OdbcDataReader dr = cmd.ExecuteReader(); // absturzstelle
                        // Datensätze anzeigen  
                        while (dr.Read())
                        {
                            txb_sqlausgabe.Text += dr["name"].ToString() + " \r\n";
                        }
     
                        //cmd.ExecuteNonQuery();
                        //txb_sqlausgabe.Text = Convert.ToString(cmd);
                        MessageBox.Show("Sie sind erfolgreich mit der Datenbank verbunden!", "Erfolgreiche Verbindung", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    }
                    catch
                    {
                        MessageBox.Show("Ein Ausgabefehler ist aufgetreten! ", "Fehler beim der Ausgabe", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }

    P.s. kannst du mir nicht eben das richtig umschreiben? Wenns keine umstände macht
     
    Rechtschreibfehler sind vorbehalten! Wer sie findet darf sie behalten.

  8. #8
    Avatar von Nico Graichen
    Nico Graichen Nico Graichen ist offline aka gemballa
    tutorials.de Moderator
    Registriert seit
    Dec 2003
    Ort
    Pulheim (NRW)
    Beiträge
    3.898
    Blog-Einträge
    34
    Zitat Zitat von CrazyNevs Beitrag anzeigen
    P.s. kannst du mir nicht eben das richtig umschreiben? Wenns keine umstände macht
    Ähm...
    ...nein
    Aus folgendem Grund:
    Der Fehler kommt von Oracle. Um das Lauffähig anzupassen bräuchte ich die DB. Die anzulegen bzw. von dir zu kopieren macht aber Umstände.

    Sorry, nicht böse sein.

    Außerdem löst Oracle bei mir in letzte Zeit einen kleine Brechreitz aus. Aber das ist ein anderes Thema

    Aber musst du denn über Odbc gehen?
    Kannst du auch umstellen auf OleDb oder DataAdapter? In dem Fall die entsprechenden Klassen von Oracle!
     
    Grüße Nico
    ----------------------
    Xing
    ----------------------
    Zitat Zitat von Mark Twain (1835-1910)
    Es gibt drei Dinge, die eine Frau aus dem Nichts hervorzaubern kann: einen Hut, einen Salat und einen Ehekrach.
    Zitat Zitat von Mike Wilson - Biographie über Larry Ellison (CEO Oracle)
    The Difference Between God and Larry Ellison: God Doesn't Think He's Larry Ellison

  9. #9
    CrazyNevs CrazyNevs ist offline Mitglied
    Registriert seit
    Dec 2008
    Beiträge
    24
    Zitat Zitat von Nico Graichen Beitrag anzeigen
    Aber musst du denn über Odbc gehen?
    Kannst du auch umstellen auf OleDb oder DataAdapter? In dem Fall die entsprechenden Klassen von Oracle!
    Ja ist mir egal nur ich habe von diesem bereich der Programmierung recht wenig Ahnung und möchte mich da halt reinfinden, und alles was ich möchte, ist Befehle in die Datenbank einzugeben (z.B. inserts) oder evtl. Daten per Programm ausgeben zu lassen (z.B. selects). Wie ich das letztendlich erreiche ist mir ja egal Hauptsache es funktioniert, nur ich ecke ja bei allen schnittstellen an, da ich nicht weiß wie ich kein comando rein bzw. raus bekomme Leider gibt es da ja auch nicht viel imI-Net zwar wie ich connecte aber wie ich die daten ausgebe bzw. in oracle rein bringe da gibt es nicht grade viel.

    Wie würdest du das denn Lösen?

    MfG Sven
    Geändert von CrazyNevs (23.03.09 um 15:20 Uhr)
     
    Rechtschreibfehler sind vorbehalten! Wer sie findet darf sie behalten.

  10. #10
    Avatar von Nico Graichen
    Nico Graichen Nico Graichen ist offline aka gemballa
    tutorials.de Moderator
    Registriert seit
    Dec 2003
    Ort
    Pulheim (NRW)
    Beiträge
    3.898
    Blog-Einträge
    34
    Schlecht gesucht würde ich sagen:
    http://download.oracle.com/docs/cd/B.../client002.htm

    Der DataProvider ist beim Oracle Client mit dabei!

    PS: Immer die entsprechende Klassen für das jeweilige Dbms nutzen, da diese vom Hersteller explizit dafür entwickelt wurden!
     
    Grüße Nico
    ----------------------
    Xing
    ----------------------
    Zitat Zitat von Mark Twain (1835-1910)
    Es gibt drei Dinge, die eine Frau aus dem Nichts hervorzaubern kann: einen Hut, einen Salat und einen Ehekrach.
    Zitat Zitat von Mike Wilson - Biographie über Larry Ellison (CEO Oracle)
    The Difference Between God and Larry Ellison: God Doesn't Think He's Larry Ellison

  11. #11
    CrazyNevs CrazyNevs ist offline Mitglied
    Registriert seit
    Dec 2008
    Beiträge
    24
    Hmm ajd as ist mir schon klar in Oracle hab ich recht viel erfahrung nur wollt halt nen Programm schreiben.

    Habe nun mal was länger gesucht und das gefundne was ich haben wollte Muss es halt nur noch auf einen insert umschreiben

    Naja muss dir mal wieder danken für deine fleißige "Hilfe".

    P.s. hier mal der Link

    http://support.microsoft.com/kb/308448/de

    MfG Sven
     
    Rechtschreibfehler sind vorbehalten! Wer sie findet darf sie behalten.

Ähnliche Themen

  1. Windows XP - MySQL- ODBC Verbindung herstellen. Kein Treiber im ODBC- Datenquellen-A
    Von Thomas_Jung im Forum Relationale Datenbanksysteme
    Antworten: 0
    Letzter Beitrag: 14.12.10, 14:57
  2. SQL/Access-ODBC-Block-Problem: Meldung "ODBC-Aktualisierung fehlgeschlagen"
    Von KlebeKalle im Forum Relationale Datenbanksysteme
    Antworten: 0
    Letzter Beitrag: 08.10.09, 14:00
  3. MFC32 und ODBC
    Von dungerl im Forum C/C++
    Antworten: 0
    Letzter Beitrag: 22.06.05, 10:50
  4. ODBC Verbindung ohne ODBC-Datenquellen-Administrator
    Von cyriacks im Forum VisualStudio & MFC
    Antworten: 3
    Letzter Beitrag: 06.06.04, 18:19
  5. Odbc
    Von Rev im Forum PHP
    Antworten: 2
    Letzter Beitrag: 01.02.02, 18:16