ошибка при создании базы данных в python
пытаюсь создать таблицы в бд по названию даты
import requests, json, sqlite3
conn = sqlite3.connect('parser_all.sqlite', check_same_thread = False)
url = 'http://127.0.0.1:8000/api/reg/'
full_page = requests.get(url, auth=("admin","admin"))
pars=json.loads(full_page.content.decode('utf-8'))
a = []
for i in pars:
a.append(i["date_visit"])
unique = list(set(a))
def get_registers(unique):
for i in range(len(unique)):
register = unique[i]
cursor = conn.cursor()
with conn:
cursor.execute('CREATE TABLE IF NOT EXISTS ' + register + ' (name STRING )')
conn.commit()
cursor.close()
get_registers(unique)
на выходе получаю ошибку
cursor.execute('CREATE TABLE IF NOT EXISTS ' + register + ' (name STRING )')
sqlite3.OperationalError: near "13": syntax error
даты берутся в формате 07-08-2020 не понимаю в чем ошибка. Через sqllitestudio таблицы с таким названием создавать можно. в чем тут ошибка?
UPD
в unique у меня примерно такой список['10-08-2020', '08-04-2020', '14-08-2020'].
соответственно в переменной register 10-08-2020
UPD2
если удалить знак "-" и перед цифрами поставить букву то добавляется . Но ограничений же на название таблицы вроде нет? Не хочет создавать даже если в названии таблицы первое стоит любое число.
может кто-нибудь объяснить почему вот так все работает?
cursor.execute('CREATE TABLE IF NOT EXISTS "' + register + '" (name STRING )')