![]() | 1 Zuckonit 2014-08-23 16:29:58 +08:00 ![]() 自增字段需要自己插么? |
2 Automan 2014-08-23 16:31:30 +08:00 insert into test1 (name) values ('juno') 提示什么错误? |
![]() | 5 Chigogo 2014-08-23 16:37:19 +08:00 MySQL的自增值不要插入的。创建的时候就自动有了。 |
![]() | 7 imkh OP @Chigogo 是不用啊,但insert语句要怎么写?以insert into test1 (name) values ('juno')这种形式插入会出现“mysql.connector.errors.ProgrammingError: Wrong number of arguments during string formatting”这种错误。 |
![]() | 8 jerry 2014-08-23 16:47:35 +08:00 ![]() 贴代码吧,应该是用错了 |
![]() | 10 imkh OP 谢谢各位,是格式用错了。原来我写的语句是cursor.execute('insert into test1 (name) values (%s)','juno'),改成cursor.execute('insert into test1 (name) values (%s)',['juno'])就行了。 |
11 zts1993 2014-08-23 16:51:22 +08:00 null |
![]() | 13 imkh OP @zts1993 在MySQL命令行里是可以的,在代码里会出现“mysql.connector.errors.DatabaseError: 1366 (HY000): Incorrect integer value: 'null' for column 'id' at row 1”错误。 |
![]() | 14 kongkongyzt 2014-08-23 18:04:55 +08:00 ![]() 建议写成 cursor.execute("insert into test1(name) values('{}')".format('juno')) |
15 Ctech 2014-08-23 18:39:56 +08:00 insert into (name1,name2) values('%s','%s') %(value1,value2)......... |
16 Ctech 2014-08-23 18:40:28 +08:00 @Ctech insert into tablename (name1,name2) values('%s','%s') %(value1,value2)......... |
![]() | 17 iptux 2014-08-23 18:51:07 +08:00 没人这样写么? cursor.execute('insert into test1 (name) values (?)',('juno',)) |
![]() | 18 pc10201 2014-08-23 19:01:05 +08:00 ![]() @ctech 的写法有问题,会被sql注入的 @iptux 的写法是对的, python的mysql最佳实践,来源 http://stackoverflow.com/questions/7929364/python-best-practice-and-securest-to-connect-to-mysql-and-execute-queries |
![]() | 19 fatpa 2014-08-23 19:28:42 +08:00 sql = "insert into test1 (name) values (%s)" mysql.execute(sql, 'name') |
![]() | 20 zeayes 2014-08-24 00:06:16 +08:00 SQL insert语句指定字段名字,SQL语句中变量用占位符。 |
![]() | 22 ulic95 2014-08-24 09:56:53 +08:00 学习了~ |
![]() | 23 suckli 2014-08-24 22:32:03 +08:00 via iPhone null |