Jag tror att du avser värdet av db_name
ska infogas istället för %s
, som en platshållare i C
. Detta fungerar inte som du har upptäckt. Istället kan du göra något som:
create_statement = "CREATE DATABASE {:s}".format(db_name)
mycursor.execute(create_statement)
Om du gör det på detta sätt kan du använda tekniken i mer komplexa situationer där det finns mer SQL efter värdet du försöker ersätta.