作者lulumii (鲁鲁咪)
看板Python
标题[问题] py3.5操作mariadb的update
时间Sat Jul 9 14:42:33 2016
各位python先进好:
ver:python 3.5
conn:pymysql 0.75
db:mariadb 10.1
目前在学习爬虫过程中遇到一个问题卡了两三天,
我有一个py程序会自动上google finance抓个股股价,
例如输入price(2330)就会去抓2330近一年股价到我预设的table:price
table:price想让他是这样的结构:
ID(pri key) 2330 2317 2498 .... ....
1 160 80 120 .... ....
2 164 82 125 .... ....
. ... .. ... .... ....
. ... .. ... .... ....
200 162 81 118 .... ....
现在使用cur.execute('update price set '+股票栏位+'=%s' %i)
会造成在update台积电股价时,2317与2498的股价会变成null,
而update鸿海股价时,2330与2498会变成null,
请问该怎麽设定,才会让update该股票股价时,
其他股票的股价维持原数值不变呢?
烦请各位大大解惑,感恩。
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 36.224.219.232
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Python/M.1468046556.A.C73.html
※ 编辑: lulumii (36.224.219.232), 07/09/2016 14:43:30
1F:→ agogoman: 你要不要试着先把SQL print out, 然後手动跑跑看? 07/09 15:50
2F:→ lulumii: 在heidisql下输入update price set 2330TW=80 07/09 16:20
3F:→ lulumii: 虽然会问我没加where子句,但可以新增股价而不影响其他 07/09 16:20
4F:→ lulumii: 但在py输入cur.execute('update price set 2330TW=80') 07/09 16:23
5F:→ lulumii: 其他股价都会被刷成null 07/09 16:23
6F:推 BlueKidds: Sql 的问题吧 07/11 22:07
7F:→ lulumii: 最後是自己程式的问题 在设id填满序列时把数值刷成null了 07/11 23:07
8F:→ lulumii: 跟update这个指令无关XD 07/11 23:07
9F:→ lulumii: 因为用sqlite去run也是一样的问题,就发现是程式错了 07/11 23:08