python - 獲取到的數據生成新的mysql表
問題描述
# -*- conding:utf8 -*-import tushare as tsimport pymysqlconn = pymysql.connect(host=’127.0.0.1’, port=3306, user=’root’, passwd=’root’, db=’test’)cursor = conn.cursor() #創建游標today_data = ts.get_today_all() #把獲取到的數據給today_data
代碼如上,可以成功連接數據庫,創建游標,獲取到數據。問題是:today_data獲取到的數據有多個字段(code、name、changepercent、trade、open high、low、settlement),那如何在獲取到數據的時候,生成一張新表?新表的字段和獲取到的字段一致。
可能我描述的不夠清楚,我是想把變量today_data里的數據插入到mysql的表中。把變量里的多個字段多條記錄插入表里,或者直接新建一個表。
問題解答
回答1:字段都知道,就直接用SQL創建表,表名你也是知道的,然后insert數據
回答2:更簡單是用pandas的to_sql命令,可以直接整體寫入sql的一張表。
這條命令有一個參數if_exists,如果設置為append,在沒有表的前提下,就會自建。
對于你用tushare獲得的本來就是pandas格式的數據,這是最簡單最直接的法子。
回答3:最簡單的莫過于在處理數據之后,使用 INSERT INTO …… VALUES vars ……
cursor.execute('INSERT INTO today_data (code、name、changepercent、trade、open high、low、settlement) VALUES (’{}’,’{}’,’{}’,’{}’,’{}’,’{}’,’{}’)'.format(code、name、changepercent、trade、open high、low、settlement))
相關文章:
1. linux - Ubuntu下編譯Vim8(+python)無數次編譯失敗2. java - 在搭建ssm的過程中 用junit測試Dao層 怎么樣都報錯 說連接不上jdbc3. javascript - 如何判斷用戶切換到了當前標簽頁?4. java - Mybatis關聯查詢5. css - 移動端 盒子內加overflow-y:scroll后 字體會變大6. java - 新手做一個安卓視頻播放器,想實現一個進度條,按鈕那種在視頻下方懸浮的功能,不知道思路!7. javascript - webpack 報錯 新人 求解8. javascript - H5頁面怎么查看console信息?9. nginx bind failed10. 前端 - CSS3 box-shadow如何設置,或者用什么方法可以產生圖中這樣陰影的效果。
