pymysql.err.ProgrammingError: (1064, "You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '%s,%s,%s,%s)' at line 1")
不过我把execute(sql, args)函数中的args改用tuple而非list就可以解决
下面是廖老师的程序:
create table users (
`id` varchar(50) not null,
`email` varchar(50) not null,
`passwd` varchar(50) not null,
`admin` bool not null,
`name` varchar(50) not null,
`image` varchar(500) not null,
`created_at` real not null,
unique key `idx_email` (`email`),
key `idx_created_at` (`created_at`),
primary key (`id`)
) engine=innodb default charset=utf8;在此插入代码
attrs['__insert__'] = 'insert into `%s` (%s, `%s`) values (%s)' % (tableName, ', '.join(escaped_fields), primaryKey, create_args_string(len(escaped_fields) + 1))
郭子淳gzc
为什么在构造sql语句是要用
%s
,而不是%s,`起什么作用呢? 在创建table的时候也是,为什么用
id`而不是id呢?我编程的时候没有考虑``,测试find功能时没有问题,不过save就出现了错误,
不过我把execute(sql, args)函数中的args改用tuple而非list就可以解决
下面是廖老师的程序: