pandas mysql主键_pandas到\u sql,只将新行更新到mysql数据库(主键和复制)

我在更新pd到mysql数据库时遇到问题for stock_code in cleaned:

url = 'https://www.hkex.com.hk/chi/sorc/options/statistics_hv_iv_c.aspx?action=csv&type=3&ucode={0}'.format(stock_code)

df = pd.read_csv(url,index_col='交易日', header=0, skiprows=2)

df.index.names = ['Trade Date']

df.index = pd.to_datetime(df.index, dayfirst=True)

df.insert(loc=0, column ='Stock Code', value=stock_code)

df.columns = ['Stock Code', 'Implied IV (%)','HV10 (%)','HV30 (%)','HV60 (%)','HV90 (%)']

df.to_sql(con=database_connection, name='table', if_exists='append')

database_connection.close()

url将提供最近3个月的数据:即2018-08-25至2018-11-25,

今天之后,url会给2018-08-26到2018-11-26的数据,我想要的是把所有的数据都保存在db中而不重复。在

但将主键设置为“交易代码”时出错(&T):

(mysql.connector.errors.IntegrityError)1062(23000):键“PRIMARY”的重复条目“2018-11-23-00001”[SQL

如何跳过重复项而只更新新行?谢谢!在

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值