gpt4 book ai didi

python - 当Python只接受sqlite3时如何导入MySQL?

转载 作者:行者123 更新时间:2023-11-29 09:55:46 26 4
gpt4 key购买 nike

我正在尝试使用“XAMPP”在我的计算机上使用本地数据库。模块名称是 MySQL & Apache。就像 YouTube 视频所指示的那样,我必须启动它们两个。现在,我的 IDLE 无法识别 MySQL,但是当我编写 sqlite3 时,它可以工作,但它没有地方可以从中获取数据库。我该怎么做才能让我的程序接受 MySQL?谢谢。我的代码如下所示:

import sqlite3

print "Welcome To The Royal Bank Of The Thomean Kingdom"
db = sqlite3.connect(host = "127.0.0.1",
user = "root",
passwd = "",
db="dbpython")
query = db.cursor()

loop = 'true'
while(loop == 'true'):
username = raw_input("Username:")
password = raw_input("Password:")
if(query.execute("SELECT * FROM `USERS` WHERE `username`='" + username + "' AND `password`='" + password + "'")):
db.commit()
print "Logged In"
else:
db.commit()
print "Failure"

最佳答案

sqlite3是一个内置的Python模块,这就是为什么它开箱即用,而导入MySQL库则不行

SQLite 不连接到 MySQL,甚至远程/本地网络地址和端口。 SQLite的协议(protocol)和数据格式甚至与MySQL不一样。

您需要单独安装 MySQL 模块,例如 mysql-python

没有特定原因导致本地 XAMPP 服务器无法使用 SQLite,您可以引用 Python 文档了解如何打开/连接到特定数据库文件

同样,我在这里没有看到 XAMPP 的具体原因。您可以使用 Flask 或 Django,并完全在 Python 中运行,然后才添加数据库

<小时/>

此外,请不要使用“字符串 + 字符串”编写 SQL 查询 - 它会导致SQL 注入(inject)攻击。解决方案是使用准备好的语句

此外,在用户输入后立即将密码直接存储在数据库中(即以纯文本形式)只是自找麻烦

关于python - 当Python只接受sqlite3时如何导入MySQL?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53898036/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com