Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

criando tabelas e colunas dinamicamente usando o conector mysql python


Você tem espaços no nome da coluna, ou seja. 'Nome' em vez de 'Nome', remover os espaços resolverá seu problema. Se você quiser preservar os espaços, use acentos graves '`' para envolver a string

Código de amostra:
columns = [ ('Last Name', 'First Name', 'Job', 'Country') ] #list of tuples

for p in columns:
    q = """ CREATE TABLE IF NOT EXISTS stud_data (`{col1}` VARCHAR(250),`{col2}` VARCHAR(250),`{col3}` VARCHAR(250),`{col4}` VARCHAR(250)); """
    sql_command = q.format(col1=p[0], col2=p[1], col3=p[2], col4 = p[3])


>>> sql_command
' CREATE TABLE IF NOT EXISTS stud_data (`Last Name` VARCHAR(250),`First Name` VARCHAR(250),`Job` VARCHAR(250),`Country` VARCHAR(250)); '