Laden...

Mysql Insert funtkoniert nicht

Erstellt von FlaverSaver vor 10 Jahren Letzter Beitrag vor 10 Jahren 2.326 Views
F
FlaverSaver Themenstarter:in
6 Beiträge seit 2013
vor 10 Jahren
Mysql Insert funtkoniert nicht

Ich habe das Problem das die Query nicht im Programm funtktioniert. Wenn ich sie per Navicat(Query Table) eingebe geht sie.

Nutze Visual Studio 2012

Könnt ihr mir helfen?

                    MySqlCommand insert = connection.CreateCommand();
                    insert.CommandText = "INSERT INTO adressen (Vorname, Nachname) Values('" + vorname_eingabe_text_box.Text + "', '" + nachname_eingabe_text_box.Text + "')";

MFG FlaverSaver

C
258 Beiträge seit 2011
vor 10 Jahren

Funktionert nicht heißt?

Exceptions? Oder keine Einträge ?

EDIT: Bitte beachte
[Hinweis] Wie poste ich richtig? Punkt 2.1 und 5

2.207 Beiträge seit 2011
vor 10 Jahren

Hallo FlaverSaver,

du solltests dich zudem mal mit SQL Parameter auseinandersetzen. Weitere Stichworte "SqlInjection", "Repository-Pattern" und und und.

Dazu benutze mal den Debugger um zu schauen, was du wirklich absendest.

Gruss

Coffeebean

F
FlaverSaver Themenstarter:in
6 Beiträge seit 2013
vor 10 Jahren

keine einträge

3.825 Beiträge seit 2006
vor 10 Jahren

Und es kommt keine Fehlermeldung ?

Schaust Du in der richtigen Datenbank nach ?

Mach es mal mit einem Dataset, da bekommst Du die Anzahl der eingefügten Datensätze zurück :

http://www.seven-c.de/files/datenbankenhowto.htm#7 Kapitel 7 und 9.

Grüße Bernd

Workshop : Datenbanken mit ADO.NET
Xamarin Mobile App : Finderwille Einsatz App
Unternehmenssoftware : Quasar-3

F
FlaverSaver Themenstarter:in
6 Beiträge seit 2013
vor 10 Jahren

nur der insert into geht nicht select geht. ich hab in der richtigen datenbank geschaut

4.931 Beiträge seit 2008
vor 10 Jahren

Wie führst du das Insert-Command denn aus (zeig mal deinen Code dafür - in deinem Eingangspost fehlt ja der eigentliche Aufruf)?

R
212 Beiträge seit 2012
vor 10 Jahren

Ich weiß jetz nich was connection.CreateCommand bewirkt, aber ich glaube da liegt dein fehler

Versuchs mal mit der Methode


        public static int ExecuteNonQuerry(string SQLQuerry)
        {
                    int coutAffectedRows = new OleDbCommand()
                    {
                        Connection = conn //<--Hier deine SQL connection einfügen,
                        CommandText = SQLQuerry
                    }.ExecuteNonQuery();

                    return coutAffectedRows;
         }

2.078 Beiträge seit 2012
vor 10 Jahren

Connection.CreateCommand tut genau das, was du in deinem Code-Snippet gezeigt hast ^^

Es erzeugt ein Command-Objekt und setzt die aktuelle Connection.

Ob da noch mehr passiert, weiß ich nicht, aber ich habe bisher keinen Unterschied bemerkt.

R
212 Beiträge seit 2012
vor 10 Jahren

Funktioniert es denn mit dem Code-Snippet??
Wenn es nicht funktioniert könnte es an den rechteeinstellungen deines MSSQL-Servers liegen.

F
FlaverSaver Themenstarter:in
6 Beiträge seit 2013
vor 10 Jahren

Connection.CreateCommand tut genau das, was du in deinem Code-Snippet gezeigt hast ^^

Es erzeugt ein Command-Objekt und setzt die aktuelle Connection.

Ob da noch mehr passiert, weiß ich nicht, aber ich habe bisher keinen Unterschied bemerkt.

das is ja sql nicht mysql

R
212 Beiträge seit 2012
vor 10 Jahren

Dann mach einfach aus "OleDbCommand" --> "MySqlCommand"

Kommt aufs selbe hinaus 😉

Ich weiß jetz nich genau ob es "ExecuteNonQuerry()" unter MySQL gibt, zurnot ersetz es durch "ExecuteReader()".

[EDIT]

Ich seh auch bei dir im Code oben kein "ExecuteReader()" oder sonstiges kann ja sein dass es drinn is.

F
FlaverSaver Themenstarter:in
6 Beiträge seit 2013
vor 10 Jahren

wofür brauche ich nen ExecuteReader()

P
48 Beiträge seit 2005
vor 10 Jahren

Wenn Du möchtest, dass man Dir hilft, den Fehler zu finden, dann stell hier doch bitte mal Deinen Code rein. Alles andere ist Rätselraten.

Ansonsten empfehle ich Dir die Lektüre von MySQL Connector/NET

insbesondere
Using MySqlCommand

Kann ja nicht sein, dass hier den ganzen Thread aneinander vorbeigeredet und geraten wird.

--
mfG.
Marcel Eckhoff

16.806 Beiträge seit 2008
vor 10 Jahren

wofür brauche ich nen ExecuteReader() [Hinweis] Wie poste ich richtig? 1.1 und 1.1.1
Sends the CommandText to the MySqlConnectionConnection and builds a MySqlDataReader.

Das hättest Du auch selbst raussuchen können.
Wir drehen uns hier jedenfalls im Kreis, da Du mit Deinen mehr als spärlichen Informationen das Helfen unnötig schwer machst; zudem befinden wir uns im absoluten Grundlagenbereich.
Daher nun noch eine Chance: zeige den relevanten Code und sag in zukunft, was genau nicht funktioniert ([Hinweis] Wie poste ich richtig? Punkt 5). "Funktioniert nicht" ist keine Fehlermeldung.

3.825 Beiträge seit 2006
vor 10 Jahren

wofür brauche ich nen ExecuteReader()

Unterschied zwischen ExecuteReader() und ExecuteNonQuerry() :

http://www.seven-c.de/files/datenbankenhowto.htm#8

Grüße Bernd

Workshop : Datenbanken mit ADO.NET
Xamarin Mobile App : Finderwille Einsatz App
Unternehmenssoftware : Quasar-3