因此,我一直在使用PHP和MySQL数据库,PHPMyAdmin和XAMPP创建网站。我正在尝试从PHP切换到python。所有的教程似乎都在使用SQLite而不是MYSQL。据我了解,sqlite是无服务器的,不能保存某些数据类型,例如datetime,但是我的网站需要datetime。我将如何通过python Flask项目连接到MySQL,或者有其他方法需要执行此操作?
答案 0 :(得分:0)
您需要使用客户端库(例如PyMySQL)
要安装pymysql,请使用:
pip install PyMySQL
然后使用此函数,它将返回数据库对象:
def make_connection():
try:
db = pymysql.connect(host='localhost',
user='root',
password='',
db='DatabaseName',
charset='utf8mb4',
cursorclass=pymysql.cursors.DictCursor)
except Exception as error:
print(error)
return db
答案 1 :(得分:0)
正如@ tirth-mehta提到的那样,如果要在没有任何ORM的情况下使用connect,则应使用客户端库。如果您不忘在每个函数调用中关闭连接而感到非常痛苦,则可以使用 decorator ,如下所示:
DB_CONFIG = {'host':'127.0.0.1',
'database':'dbname',
'user':'root',
'password':''}
def connect(func):
def _connect(*args, **kwargs):
conn = pymysql.connect(**DB_CONFIG)
try:
rv = func(conn, *args, **kwargs)
except Exception as e:
print(e)
else:
conn.commit()
finally:
conn.close()
return rv
return _connect