Zmienna w cursor() execute. Python i MySQL

0

Witam.
Mam pytanie. Jak dodać zmienna do tego kodu:

   cur = con.cursor()
    cur.execute("CREATE TABLE `test` ( \
               `id` mediumint(8) unsigned NOT NULL auto_increment, \
               `lagerort` mediumint, \
               `type` varchar(255) default NULL, \
               `size` varchar(255) default NULL, \
               `artikiel` varchar(255) default NULL, \
               PRIMARY KEY (`id`) \
               ) AUTO_INCREMENT=1;")

zmienna nazywa się "name" i mialaby byc zamiast "test" . Próbowałem już zrobić to tak:
'...cur.execute("CREATE TABLE ", zmienna", ( '
Dostaje błąd o 4 argumentach zamiast trzech.

1

Masz 3 możliwości. Pierwsza to łączenie stringów za pomocą znaku +, czyli:

cur.execute("CREATE TABLE " + name + " ciąg dalszy...")

Druga to użycie znaku %:

cur.execute("CREATE TABLE %s ciąg dalszy..." % name)

Trzecia to użycie metody format() na stringu.

cur.execute("CREATE TABLE {0} ciąg dalszy...".format(name)

Cyferki w nawiasach {} możesz pominąć.

https://docs.python.org/3.4/library/string.html

0

Dziękuję pięknie.

1 użytkowników online, w tym zalogowanych: 0, gości: 1