mysql python用法_我不能让Python使用mySQL

好吧,我先说“我是Python新手”。我使用PyCharm运行这个程序,我正在构建一个数据库(本地托管的mySQL)。在

不幸的是,我在使用Python将数据导入数据库时遇到了问题,但是我能够通过phpmyadminwebgui在SQL中插入数据。我一定漏掉了一些明显的东西。我在用mysql.connector“PyCharm的插件。这是相关的代码。在

那么,一开始我导入模块?像这样import mysql.connector

这段代码是在一对while循环中引用的

^{pr2}$

请不要因为我的写作方式活着吃掉我,我是新来的:)

其他重要因素我可以让它输入几次数据(但它作为一个空值传入SQL。我猜我传递的数字格式不对?或者与数据库排序有关吗?)在

我还尝试了一些PyCharm的不同插件(它们似乎都是以类似的方式实现的)。在

我试过了,在插入的变量名上加引号和不加引号,我已经试了太多了,我真是束手无策。在

至于错误代码,这是目前的情况C:\Users\logge\PycharmProjects\untitled3\venv\Scripts\python.exe C:/Users/logge/PycharmProjects/untitled3/main.py

Traceback (most recent call last):

File "C:/Users/logge/PycharmProjects/untitled3/main.py", line 111, in

weather(1)

File "C:/Users/logge/PycharmProjects/untitled3/main.py", line 101, in weather

c.execute("INSERT INTO 'stations' ('dtime', 'tmp', 'apptmp', 'dewpoint', 'relhum', 'delta_t', 'wind_dir', 'wind_spd_kmh', 'wind_gust_kmh', 'wind_spd_kts', 'wind_gust_kts', 'press_qnh', 'press_msl', 'rainsince9am') VALUES (dtime1, tmp1, apptmp1, dewpoint1, relhum1, delta_t1, wind_dir1, wind_spd_kmh1, wind_gust_kmh1, wind_spd_kts1, wind_gust_kts1, press_qnh1, press_msl1, rainsince9am1)")

File "C:\Users\logge\PycharmProjects\untitled3\venv\lib\site-packages\mysql\connector\cursor.py", line 561, in execute

self._handle_result(self._connection.cmd_query(stmt))

File "C:\Users\logge\PycharmProjects\untitled3\venv\lib\site-packages\mysql\connector\connection.py", line 525, in cmd_query

result = self._handle_result(self._send_cmd(ServerCmd.QUERY, query))

File "C:\Users\logge\PycharmProjects\untitled3\venv\lib\site-packages\mysql\connector\connection.py", line 427, in _handle_result

raise errors.get_exception(packet)

mysql.connector.errors.ProgrammingError: 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ''stations' ('dtime', 'tmp', 'apptmp', 'dewpoint', 'relhum', 'delta_t', 'wind_dir' at line 1

Process finished with exit code 1

错误代码中提到的“101行”是指以“c.execute…”开头的行。。。在我发布的代码的第二部分插入'。在

下面是我也尝试过的代码,只是想看看是否可以得到任何结果(但我仍然得到相同的错误):from __future__ import print_function

from datetime import date, datetime, timedelta

import mysql.connector

dtime1 = 1

tmp1 = 5

apptmp1 = 2

dewpoint1 = 64

relhum1 = 3

delta_t1 = 4

wind_dir1 = 5

wind_spd_kmh1 = 6

wind_gust_kmh1 = 7

wind_spd_kts1 = 8

wind_gust_kts1 = 9

press_qnh1 = 10

press_msl1 = 11

rainsince9am1 =12

cnx = mysql.connector.connect(host ='localhost', user = 'root', passwd= '', db='weather_test01')

cursor = cnx.cursor()

tomorrow = datetime.now().date() + timedelta(days=1)

add_employee = ("INSERT INTO stations "

"(dtime, tmp, apptmp, dewpoint, relhum, delta_t, wind_dir, wind_spd_kmh, wind_gust_kmh, wind_spd_kts, wind_gust_kts, press_qnh, press_msl, rainsince9am) "

"VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s,)")

data_employee = (dtime1, tmp1, apptmp1, dewpoint1, relhum1, delta_t1, wind_dir1, wind_spd_kmh1, wind_gust_kmh1, wind_spd_kts1, wind_gust_kts1, press_qnh1, press_msl1, rainsince9am1)

# Insert new employee

cursor.execute(add_employee, data_employee)

emp_no = cursor.lastrowid

# Make sure data is committed to the database

cnx.commit()

cursor.close()

cnx.close()

如有任何帮助或建议,我们将不胜感激。我很高兴张贴整个代码,如果需要也。我只是不想把整件事搞得一团糟。在

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值