I'm having a problem with sqlite3 in python, can anyone help me?
The error is this:
:~$ python3 05_create_data_param.py
Nome: Henry Elias Carlos Eduardo dos Santos
Usuário: Henry94
Senha: mGq0HJAM2C
Data de nascimento: 08/01/1994
CPF: 772.041.070-04
Email: [email protected]
Fone: (85) 3808-2828
Cidade: Fortaleza
UF: CE
Criado em (yyyy-mm-dd): 10/06/2016
Traceback (most recent call last):
File "05_create_data_param.py", line 24, in <module>
""", (p_nome, p_usuario, p_senha, p_nascimento, p_cpf, p_email, p_fone,p_cidade, p_uf, p_criado_em))
sqlite3.OperationalError: near "de": syntax error
The codes are these:
# -*- coding: utf-8 -*-
import sqlite3
conn = sqlite3.connect('clientes.db')
cursor = conn.cursor()
cursor.execute("""
CREATE TABLE clientes (
id INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
nome TEXT NOT NULL,
usuário TEXT NOT NULL,
senha TEXT NOT NULL,
data de nascimento DATE NOT NULL,
cpf VARCHAR(11) NOT NULL,
fone TEXT,
cidade TEXT,
uf VARCHAR(2) NOT NULL,
criado_em DATE NOT NULL
);
""")
print('Tabela criada com sucesso.')
conn.close()
and
# -*- coding: utf-8 -*-
import sqlite3
conn = sqlite3.connect('clientes.db')
cursor = conn.cursor()
p_nome = input('Nome: ')
p_usuario = input('Usuário: ')
p_senha = input('Senha: ')
p_nascimento = input('Data de nascimento: ')
p_cpf = input('CPF: ')
p_email = input('Email: ')
p_fone = input('Fone: ')
p_cidade = input('Cidade: ')
p_uf = input('UF: ')
p_criado_em = input('Criado em (yyyy-mm-dd): ')
cursor.execute("""
INSERT INTO clientes (nome, usuario, senha, data de nascimento, cpf, email, fone, cidade, uf, criado_em)
VALUES (?,?,?,?,?,?,?,?,?,?)
""", (p_nome, p_usuario, p_senha, p_nascimento, p_cpf, p_email, p_fone, p_cidade, p_uf, p_criado_em))
conn.commit()
print('Dados inseridos com sucesso.')
conn.close()