在pythonAnywhere中将python转换为MySQL

Jim*_*his 6 python mysql pythonanywhere python-3.4

我试图将数据从python 3.4输入到MySQL数据库中,而这两个实体都在pythonAnywhere内。换句话说,我正在pythonAnywhere中编写一个python 3.4程序,并且需要在pythonAnywhere中也连接到MySQL数据库。我在这里检查了其他答案,但还没有弄清楚。我已经尝试了一些帖子中提到的(-u -h -p)语法,但是我不确定这是否只是为了从pythonAnywhere外部获取访问权限。任何帮助,将不胜感激。

++++++++++++++++++++++

实际上,我已经弄清楚了(对Scripting MySQL网站的Tony Darnell表示敬意,我from窃了其中的大部分内容:

import MySQLdb

db=MySQLdb.connect(
    host='Your_User_Name.mysql.pythonanywhere-services.com',
    user='Your_User_Name',
    passwd='Your_pythonAnywhere_password',
    db='Your_User_Name$Your_Data_Base')
Run Code Online (Sandbox Code Playgroud)

上面以“您的”开头的所有内容均指代您使用pythonanywhere的个人帐户信息

其他所有内容都完全按照所示列出。请注意,用户名后面的$是数据库名的一部分(db =等)。

cursor = db.cursor ()
Run Code Online (Sandbox Code Playgroud)

使用execute()方法执行SQL查询。

cursor.execute ("Enter any MySQL query here. use the quotes. no semi-colon")
Run Code Online (Sandbox Code Playgroud)

使用fetchone()方法从查询中提取一行。

row = cursor.fetchone ()
print(row)
Run Code Online (Sandbox Code Playgroud)

使用fetchall()方法获取查询的其余所有内容

data = cursor.fetchall()
print(data)
Run Code Online (Sandbox Code Playgroud)

关闭光标对象

cursor.close ()
Run Code Online (Sandbox Code Playgroud)

关闭连接

db.close ()
Run Code Online (Sandbox Code Playgroud)