verwendetes Datenbanksystem: MySQL
Hi Leute,
Habe ein Problem mit meinem Connection String zur mysql datenbank habe alles überprüft und per phpmyadmin komme ich mit den logindaten drauf aber wenn ich versuche per C# Drauf zuzugreifen sagt er mir
Connection must be Valid and open
und Hier mein Script:
MySqlConnection con = new MySqlConnection("Data Source=127.0.0.1;User Id=rechnungsprog;Password=blablabla;Database=fricke-hosting;";);
try{
con.Open();
if (con.State == ConnectionState.Open)
{
string combovar = combo(comboBox1.Text);
MySqlCommand cmd = new MySqlCommand("SELECT * FROM kunden WHERE " + combovar + " LIKE '%" + textBox1.Text.ToString() + "%'";);
MySqlDataReader reader = cmd.ExecuteReader();
while(reader.Read())
{
}
reader.Close();
cmd.Cancel();
}
else
{
MessageBox.Show("Fehler in der Verbindung zur Datenbank! \nBitte überprüfen Sie ihre Internet verbindung!\n", "Datenbank Verbindung", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
catch (Exception exception)
{
MessageBox.Show("Fehler in der Verbindung zur Datenbank! \nBitte überprüfen Sie ihre Internet verbindung!\n" + exception.Message, "Datenbank Verbindung", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
con.Close();
Kann mir bitte jemand Helfen???
Gruß Frisch12
"Programming is similar to sex. If you make a mistake, you have to support it for the rest of your life."
Hab ich auch schon geschaut und auch viele ausprobiert aber nix hat geklappt!
weis jemand Rat???
Gruß Frisch12
Dein Connectionstring ist definitiv falsch.
http://dev.mysql.com/doc/refman/5.1/en/connector-net-using-connecting-connection-string.html
Also wenn ich das PW ändere kommt acces deniwd for usw. nur halt wenn alles stimmt kommt diese doofe message
Gruß Frisch12
Achtung: Mein Beitrag kommt nur vorsorglich. Wenn du das Zugangsproblem gelöst hast, dann kümmere dich bitte um folgende Hinweise.
Dein SQL-Befehl ist in dieser Form sehr schlecht; benutzte unbedingt Parameter von SQL Befehlen. Text.ToString ist dabei sowieso Quatsch (ein String ist ein String).
Code sollte immer sinnvoll eingerückt werden; das liest sich viel besser (und macht oft auch schnell deutlich, wo ein Fehler liegt).
Siehe außerdem [Artikel] Ressourcen schonen - Datenbanken richtig öffnen und schließen. Benutze auch an allen geeigneten Stellen using-Blöcke.
Jürgen
@Frisch12:
Wenn du den Text einigermassen lesbar ( einrückung von Jürgen schon angemerkt )
gemacht hättest, wäre etwas eher aufgefallen, das Du vergessen hast dem
command auch die Connection zuzuweisen.
http://www.vbmysql.com/articles/vbnet-mysql-tutorials/ ( ist zwar vb.net, aber das macht ja nichts)
http://dev.mysql.com/doc/refman/5.1/de/connector-net.html
Hallo Frisch12,
abgesehen davon was die anderen schon sagte, solltest du deinem Commandobjekt die Connection zuweisen. Dann klappts auch mit den Queries.
heute code ich, morgen debug ich und übermorgen cast ich die königin auf int
Allgemeiner Tipp :
Die Verbindung zur Datenbank immer zuerst mit dem MySql Query Browser herstellen.
Bitte überprüfen Sie ihre Internet verbindung!
Willst Du später zu einer MySql Datenbank bei einem Provider verbinden ? Beachte dass die meisten Provider einen direkten Zugriff zur Datenbank nicht zulassen.
Manchmal per SSL.
Grüße Bernd
Workshop : Datenbanken mit ADO.NET
Xamarin Mobile App : Finderwille Einsatz App
Unternehmenssoftware : Quasar-3
@unclesam
Wenn du den Text einigermassen lesbar ( einrückung von Jürgen schon angemerkt ) gemacht hättest, wäre etwas eher aufgefallen, das Du vergessen hast dem command auch die Connection zuzuweisen.
Wenn zwei Helfer den gleichen Hinweis geben, wird es sicher helfen. 😁 Jürgen
hab nur das mit dem einrücken gelesen und bin zum nächsten satz gesprungen
Damit dein ConnectionString stimmt, kannst du die ConnectionStringBuilder-Klasse verwenden.
Einfach die Propeties Server (oder Host), Database, UserId, Password zuweisen und danach die Property ConnectionString abrufen. Dort steckt der korrekte ConnectionString drin.
heute code ich, morgen debug ich und übermorgen cast ich die königin auf int
Dnake euch habe wirklich vergessen dem Command den conection String zuzuweisen danke euch.
Gruß Frisch12
Closed