Autor Beitrag
Felix2000
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 124



BeitragVerfasst: Mo 31.10.11 17:34 
Hi Folks !

Ich habe mal eine Frage an euch. Ich nutze auf meinem Rechner eine MY Sql Datenbank inkl. MySQL Workbench 5.2 CE.

Ich melde mich hier mit keinen daten an (also kein Benutzername und Passwort). Ich bekomme nun durch ein externes C Sharp bzw. ASP.Net Projekt keinen Zugriff auf diese Datenbank. Hier der Code für die zwei von mir implementierten Methoden:

ausblenden volle Höhe C#-Quelltext
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:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
        //Verbindung zum MySQL Datenbanksysten herstellen
        MySqlConnection erzeugeDatenbankverbindung()
        {
            MySqlConnection connection = null;

            try
            {
                string myConnectionString = "Server = localhost; Port = 3306; Database = formulardaten; Uid = ; Pwd = ;";
                connection = new MySqlConnection(myConnectionString);
            }
            
            catch(MySqlException e)
            {
                this.Label1_Hinweisfeld.Text = e.Message;
            }
                        
            return connection;            
        }


        //Ausgabe der Datensätze
        void ausgebenDatensätze(MySqlConnection connection)
        {
            try
            {
                  MySqlConnection connectionwerte = connection; 

                  MySqlCommand command = connectionwerte.CreateCommand();
                  command.CommandText = "SELECT * FROM formulardaten";

                  MySqlDataReader Reader;
                  connectionwerte.Open();

                  Reader = command.ExecuteReader();

                  while (Reader.Read())
                  {
                      string rowItem = "";

                      for (int i = 0; i < Reader.FieldCount; i++)
                      {
                           rowItem += Reader.GetValue(i).ToString();
                           this.ausgebenFormulardaten(rowItem);
                      }
                  }

                  connectionwerte.Close();                
            }

            catch(MySqlException e)
            {
                this.Label1_Hinweisfeld.Text = e.Message;
            }
        }


Wie genau kann ich jetzt herausfinden, was ich innerhalb des Connection Strings für einen Benutzernamen und was für ein Passwort eingeben muss? Bei der Codezeile "connectionwerte.Open();" wird abgebrochen.

Greetz
Felix
Trashkid2000
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 561
Erhaltene Danke: 137



BeitragVerfasst: Mo 31.10.11 18:22 
user profile iconFelix2000 hat folgendes geschrieben Zum zitierten Posting springen:
Wie genau kann ich jetzt herausfinden, was ich innerhalb des Connection Strings für einen Benutzernamen und was für ein Passwort eingeben muss?
Naja, "herausfinden", wie willst Du das anstellen?
Du brauchst einen User, der Zugriff auf die Datenbank hat. Und die Daten des Benutzers musst Du im Connectionstring mitgeben 8)
Th69
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Moderator
Beiträge: 4798
Erhaltene Danke: 1059

Win10
C#, C++ (VS 2017/19/22)
BeitragVerfasst: Mo 31.10.11 18:22 
Hallo Felix,

analog zu Welche Datenbanken kann ich nutzen? kann ich auch nur auf dieselbe Seite connectionstrings.com verweisen.

Welche Fehlermeldung erhältst du denn?
Heißen denn wirklich sowohl Datenbank als auch Tabelle beide 'formulardaten'?

P.S.: Aufgrund des Connection-Poolings von ADO.NET solltest du nur so lokal wie möglich die Datenbankverbindung öffnen (also nicht die ganze Zeit lang offen lassen), s.a. meine Links in Anfängerfrage zur DB-Connection

Evtl. helfen dir auch die Links unter meinem Beitrag zu C# login zu MSSQL (wobei du dann entsprechend MySqQL anstatt MS-SQL als Datenbank-Provider verwenden mußt).