Seite 1 von 1

Textfeld Inhalt in MySql Datenbank

Verfasst: Sonntag 10. April 2022, 21:12
von vierkant
Hallo liebe Freunde.

mit folgendem Code trage ich in meine mySql Datenbank einen neuen Datensatz:

Code: Alles auswählen

sql = "INSERT INTO optionen VALUES ('test')"

    my_cursor.execute(sql)
    my_db.commit()
wie kann ich anstatt des Strings "test" einen Eintrag aus einem Textfeld

Code: Alles auswählen

brief=tk.Text()
in die Datenbank speichern?

Bedanke mich im Vorfeld für die Hilfe..
lg Jürgen Jürgen

Re: Textfeld Inhalt in MySql Datenbank

Verfasst: Sonntag 10. April 2022, 21:13
von __deets__
Mit einem Platzhalter %s und der parametrischen Form vom execute. Da sind Beispiele in der Dokumentation.

Re: Textfeld Inhalt in MySql Datenbank

Verfasst: Montag 11. April 2022, 13:24
von vierkant
Danke für die Antwort.

Mein Versuch scheiterte:

Code: Alles auswählen

brief=tk.Text()
brief.pack()

sql = "INSERT INTO optionen VALUES (%s)"
    val = (brief.get)
    my_cursor.execute(sql, val)
    my_db.commit()
was mach ich da falsch?

lg Jürgen Jürgen

Re: Textfeld Inhalt in MySql Datenbank

Verfasst: Montag 11. April 2022, 13:30
von Sirius3
Warum ein neuer Thread?
Was verstehst Du an den Lösungen im anderen Thread nicht: viewtopic.php?f=18&t=54431#p404179?

Re: Textfeld Inhalt in MySql Datenbank

Verfasst: Montag 11. April 2022, 13:33
von __deets__
vierkant hat geschrieben: Montag 11. April 2022, 13:24

Code: Alles auswählen

>
    val = (brief.get)
 
was mach ich da falsch?
Klammern sind zwar das Salz in der Suppe, aber werden nicht einfach verstreut nach gutduenken. get muss schon aufgerufen werden.

Re: Textfeld Inhalt in MySql Datenbank

Verfasst: Montag 11. April 2022, 13:51
von vierkant
ich verstehs nicht...

hab doch ".get" eingefügt

Re: Textfeld Inhalt in MySql Datenbank

Verfasst: Montag 11. April 2022, 13:53
von Sirius3
Vergleiche mal genau, wie Du hier get verwendest mit dem, wie get in dem von mir verlinkten Beitrag verwendet wird.

Re: Textfeld Inhalt in MySql Datenbank

Verfasst: Montag 11. April 2022, 14:10
von vierkant
Also ich verstehs immer noch nicht...

sorry für mein unwissen

liegt es daran weil es ein Textfeld ist und kein Entry?

Re: Textfeld Inhalt in MySql Datenbank

Verfasst: Montag 11. April 2022, 14:22
von vierkant
jetzt hab ichs

Code: Alles auswählen

def mtg_brief_speichern():
    with closing(my_db.cursor()) as cursor:
     cursor.execute("INSERT INTO optionen (brief) VALUES (%s)",[brief.get("1.0", "end")])
     my_db.commit()
Danke für die Geduld
lg Jürgen Jürgen