2017-09-22 22 views
0

我有日期,時間,開盤價,最高價,最低價,收盤價卷,牛,熊表H0001。 (共9欄)。由於我需要從兩個不同的來源(文本文件)中捕獲數據,我分別插入數據集dataset1:(Date,Time,Open,High,Low,Close,Volume),dataset2:(Date,Time ,公牛,熊)。 我通過使用Python這種說法插入的數據:如 「數據截斷列‘熊’在行XXXXX」 的數據可以在各列中插入發生做兩個插入查詢表中的蟒蛇

cur.execute("""REPLACE INTO H0001 (Date, Time, Open, High, Low, Close, Volume) VALUES ('%s','%s','%s','%s','%s','%s','%s')""" % (KDate, KTime, KOpen, KHigh, KLow, KClose, KVolume)) 

錯誤。

最後我跑到下面的代碼:

cur.execute("""REPLACE INTO H0001 (Date, Bull, Bear) VALUES ('%s','%s','%s')""" % (KDate, KBull, KBear)) 

出錯

cur.execute("""REPLACE INTO H0001 (Date, Bull, Bear) VALUES ('%s','%s','%s')""" % (KDate, KBull1, KBear1)) 
File "/usr/local/lib/python2.7/dist-packages/MySQLdb/cursors.py", line 205, in execute 
self.errorhandler(self, exc, value) 
File "/usr/local/lib/python2.7/dist-packages/MySQLdb/connections.py", line 36, in defaulterrorhandler 
raise errorclass, errorvalue 
OperationalError: (2013, 'Lost connection to MySQL server during query') 

但是,當我創建一個新表,我可以插入數據也只是日期,時間,公牛,熊。 數據庫有什麼問題?

+0

增加'connect_timeout'or重新連接到[MySQL的](https://dev.mysql.com/doc/refman/5.7/en/error-lost-connection.html),這兩個查詢之間的代碼可能是需要很長時間才能關閉與MySQL的連接。 –

+0

連接已分離。我通過兩個不同的python文件連接數據庫。運行第一個日期,時間,OHLCV,然後是第二個牛熊。 – tw123789

+0

想知道有多少行正在更新?您應該[閱讀此](https://dev.mysql.com/doc/refman/5.7/en/error-lost-connection.html)以獲取更多信息。 –

回答

0

REPLACE本身將destory輸入的數據,所以我不能使用第二碼來更新數據。如果該條目中已有數據,則應使用UPDATE。