почему я не могу создать базу данных автоматически?

import pymysql
con = pymysql.connect(host='127.0.0.1', port=3306, user='root', passwd='******')
db_name=['Cinfos', 'Holders', 'Capitals','Dividends','Fi_Dis','Finances']   
for db in db_name:
    cur=con.cursor()
    cur.execute("create database  if not exit %s" %db)
    con.commit()
    cur.close()

Я получил сообщение об ошибке:
pymysql.err.ProgrammingError: (1064, «У вас есть ошибка в синтаксисе SQL; проверьте руководство, соответствующее вашей версии сервера MySQL, чтобы выбрать правильный синтаксис рядом с 'exit Cinfos' в строка 1 ")
Что случилось с моим кодом pymysql?


person showkey    schedule 19.04.2014    source источник


Ответы (1)


У вас есть ошибка в вашем запросе.

cur.execute("create database  if not exit %s" %db)

должно быть:

cur.execute("create database  if not exists %s" %db)
person mata    schedule 19.04.2014
comment
Вы имеете в виду, ЕСЛИ НЕ СУЩЕСТВУЕТ - person JBWhitmore; 26.09.2014
comment
@JBWhitmore - спасибо, что заметили. Исправляем опечатку с опечаткой, теперь этого не должно происходить ... :) - person mata; 26.09.2014
comment
Я считаю, что это закон природы. :) - person JBWhitmore; 26.09.2014