![](/img/trans.png)
[英]Python/MySQL ProgrammingError: 1054 (42S22): Unknown column 'd' in 'field list'
[英]MySQL error message: “1054 (42S22): Unknown column 'inf' in 'field list'”
"errorMessage": "1054 (42S22): Unknown column 'inf' in 'field list'"
我不确定此错误消息的来源在哪里。 它指向mycursor.executemany(sql, all_data)
,它告诉我数据有问题? 首先,我试图理解这意味着什么。 有人可以分解吗?
该脚本相当广泛,但我显示了插入数据的部分。
# Create DataFrame
df = pd.DataFrame({"date": date, "open": open, "high": high, "low": low, "close": close, "volume": volume})
dfvol = pd.DataFrame({"date": date, "open": open, "high": high, "low": low, "close": volume, "volume": volume})
df["sma10"] = SMA(df, 10)
df["sma30"] = SMA(df, 30)
df["sma50"] = SMA(df, 50)
df["sma200"] = SMA(df, 200)
df["rsi"] = RSI(df)
df["williams"] = WILLIAMS(df)
df["adx"] = ADX(df)
df["bbwidth"] = BBWIDTH(df)
df["vol10"] = SMA(dfvol, 10)
df["vol30"] = SMA(dfvol, 30)
LIST = [
float(df.tail(1)['sma10']),
float(df.tail(1)['sma30']),
float(df.tail(1)['sma50']),
float(df.tail(1)['sma200']),
float(df.tail(1)['rsi']),
float(df.tail(1)['williams']),
float(df.tail(1)['adx']),
float(df.tail(1)['bbwidth']),
float(df.tail(1)['vol10']),
float(df.tail(1)['vol30']),
float(df.tail(1)['close']),
yearPer,
monthPer,
fiveDayPer
]
q = 0; NEW = []
for K in LIST:
if math.isnan(K) == True:
NEW.append(0)
else:
NEW.append(K)
q += 1
NEW.append(k[j])
LIST.append(k[j])
all_data.append(
tuple(
NEW
)
)
except:
pass
j += 1 # going to the next ticker
# this controls the amount of requests per second
end = time.time()
while end-start < 1.01:
end = time.time()
print("total time to get data and make calculations: ",time.time() - Start_time)
print()
var = ['sma10','sma30','sma50','sma200','rsi','williams','adx','bbwidth','avgVol10day','avgVol30day','price','yearPer','monthPer','fiveDayPer'] # variable that we are updating
# table to insert into
table = 'stockStats_dev'
sql = UpdateBulk(var, table, 'ticker')
# # inserting the data into the table
mycursor.executemany(sql, all_data)
# closing access to the database
mydb.commit()
mycursor.close()
mydb.close()
这是完整的错误消息
[ERROR] ProgrammingError: 1054 (42S22): Unknown column 'inf' in 'field list'
Traceback (most recent call last):
File "/var/task/index.py", line 422, in handler
mycursor.executemany(sql, all_data)
File "/opt/python/lib/python3.8/site-packages/mysql/connector/cursor.py", line 659, in executemany
self.execute(operation, params)
File "/opt/python/lib/python3.8/site-packages/mysql/connector/cursor.py", line 551, in execute
self._handle_result(self._connection.cmd_query(stmt))
File "/opt/python/lib/python3.8/site-packages/mysql/connector/connection.py", line 490, in cmd_query
result = self._handle_result(self._send_cmd(ServerCmd.QUERY, query))
File "/opt/python/lib/python3.8/site-packages/mysql/connector/connection.py", line 395, in _handle_result
raise errors.get_exception(packet)
描述表
[('ticker', 'varchar(16)', 'NO', 'PRI', None, ''),
('companyName', 'varchar(255)', 'YES', '', None, ''),
('exchangeShortName', 'varchar(12)', 'YES', '', None, ''),
('sector', 'varchar(100)', 'YES', '', None, ''),
('industry', 'varchar(100)', 'YES', '', None, ''),
('description', 'blob', 'YES', '', None, ''),
('website', 'blob', 'YES', '', None, ''),
('news', 'blob', 'YES', '', None, ''),
('marketCap', 'double', 'YES', '', None, ''),
('enterpriseValue', 'double', 'YES', '', None, ''),
('price', 'double', 'YES', '', None, ''),
('52wkHigh', 'double', 'YES', '', None, ''),
('52wkLow', 'double', 'YES', '', None, ''),
('changesPercentage', 'double', 'YES', '', None, ''),
('avgVol3m', 'double', 'YES', '', None, ''),
('avgVol10day', 'double', 'YES', '', None, ''),
('avgVol30day', 'double', 'YES', '', None, ''),
('sharesOutstanding', 'double', 'YES', '', None, ''),
('eps', 'double', 'YES', '', None, ''),
('pe', 'double', 'YES', '', None, ''),
('pbRatio', 'double', 'YES', '', None, ''),
('sma10', 'double', 'YES', '', None, ''),
('sma30', 'double', 'YES', '', None, ''),
('sma50', 'double', 'YES', '', None, ''),
('sma200', 'double', 'YES', '', None, ''),
('priceAvg10', 'double', 'YES', '', None, ''),
('priceAvg50', 'double', 'YES', '', None, ''),
('priceAvg200', 'double', 'YES', '', None, ''),
('beta', 'double', 'YES', '', None, ''),
('pegRatio', 'double', 'YES', '', None, ''),
('dividendYieldPercentage', 'double', 'YES', '', None, ''),
('dividendYield', 'double', 'YES', '', None, ''),
('payoutRatio', 'double', 'YES', '', None, ''),
('ebitda', 'double', 'YES', '', None, ''),
('netIncome', 'double', 'YES', '', None, ''),
('revenue', 'double', 'YES', '', None, ''),
('operatingIncome', 'double', 'YES', '', None, ''),
('grossProfit', 'double', 'YES', '', None, ''),
('enterpriseValueMultiple', 'double', 'YES', '', None, ''),
('evToSales', 'double', 'YES', '', None, ''),
('evToOperatingCashFlow', 'double', 'YES', '', None, ''),
('evToFreeCashFlow', 'double', 'YES', '', None, ''),
('revenuePerShare', 'double', 'YES', '', None, ''),
('netIncomePerShare', 'double', 'YES', '', None, ''),
('operatingCashFlowPerShare', 'double', 'YES', '', None, ''),
('freeCashFlowPerShare', 'double', 'YES', '', None, ''),
('earningsYield', 'double', 'YES', '', None, ''),
('freeCashFlowYield', 'double', 'YES', '', None, ''),
('cashPerShare', 'double', 'YES', '', None, ''),
('bookValuePerShare', 'double', 'YES', '', None, ''),
('shareholdersEquityPerShare', 'double', 'YES', '', None, ''),
('netProfitMargin', 'double', 'YES', '', None, ''),
('grossProfitMargin', 'double', 'YES', '', None, ''),
('operatingProfitMargin', 'double', 'YES', '', None, ''),
('returnOnEquity', 'double', 'YES', '', None, ''),
('returnOnAssets', 'double', 'YES', '', None, ''),
('returnOnInvestedCapital', 'double', 'YES', '', None, ''),
('returnOnCapitalEmployed', 'double', 'YES', '', None, ''),
('priceToSalesRatio', 'double', 'YES', '', None, ''),
('priceToFreeCashFlowsRatio', 'double', 'YES', '', None, ''),
('priceCashFlowRatio', 'double', 'YES', '', None, ''),
('priceToOperatingCashFlowsRatio', 'double', 'YES', '', None, ''),
('debtToEquity', 'double', 'YES', '', None, ''),
('debtToAssets', 'double', 'YES', '', None, ''),
('cashFlowToDebtRatio', 'double', 'YES', '', None, ''),
('netDebtToEBITDA', 'double', 'YES', '', None, ''),
('researchAndDevelopementToRevenue', 'double', 'YES', '', None, ''),
('capexToOperatingCashFlow', 'double', 'YES', '', None, ''),
('capexToRevenue', 'double', 'YES', '', None, ''),
('grahamNumber', 'double', 'YES', '', None, ''),
('grahamNetNet', 'double', 'YES', '', None, ''),
('commonStockIssued', 'double', 'YES', '', None, ''),
('commonStockRepurchased', 'double', 'YES', '', None, ''),
('operatingCashFlow', 'double', 'YES', '', None, ''),
('freeCashFlow', 'double', 'YES', '', None, ''),
('cashAndCashEquivalents', 'double', 'YES', '', None, ''),
('totalCurrentAssets', 'double', 'YES', '', None, ''),
('totalAssets', 'double', 'YES', '', None, ''),
('totalCurrentLiabilities', 'double', 'YES', '', None, ''),
('longTermDebt', 'double', 'YES', '', None, ''),
('totalLiabilities', 'double', 'YES', '', None, ''),
('totalStockholdersEquity', 'double', 'YES', '', None, ''),
('totalDebt', 'double', 'YES', '', None, ''),
('netDebt', 'double', 'YES', '', None, ''),
('rsi', 'double', 'YES', '', None, ''),
('adx', 'double', 'YES', '', None, ''),
('standardDeviation', 'double', 'YES', '', None, ''),
('williams', 'double', 'YES', '', None, ''),
('analysisRating', 'varchar(45)', 'YES', '', None, ''),
('bbwidth', 'double', 'YES', '', None, ''),
('fiveDayPer', 'double', 'YES', '', None, ''),
('monthPer', 'double', 'YES', '', None, ''),
('yearPer', 'double', 'YES', '', None, '')]
# table to insert into
table = 'stockStats_dev'
sql = UpdateBulk(var, table, 'ticker')
# ADD THIS
del all_data['inf']
# inserting the data into the table
mycursor.executemany(sql, all_data)
# closing access to the database
mydb.commit()
mycursor.close()
mydb.close()
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.