【发布时间】:2021-02-15 22:12:07
【问题描述】:
我有一个登录界面,我使用 tkinter 和 sqlite3 作为数据库,一切正常,在我的 PC 本地存储的数据库中,我创建了用于登录的用户名和密码,我想知道是否有一种方法可以仅将我的 sqlite.db 存储在云或某些服务器中,并且我仍然可以使用我在云中的数据库在任何计算机上使用我的 tkinter 界面登录。 这就是我用来在本地连接我的 sqlite 数据库并且工作顺利的方法。
conn = sqlite3.connect('login_file.db')
c = conn.cursor()
user = entry_usuario.get()
contra = entry_contrasena.get()
c.execute('SELECT * FROM superusuario WHERE usuario = ? AND password = ?', (user, contra))
if c.fetchall():
messagebox.showinfo(title='login correcto', message='usuario y contraseña correctos')
else:
messagebox.showerror(tittle=None, message='Contraseña Incorrecta')
c.close()
Psdt:我试图使用 firebase 身份验证来链接我的 tkinter 登录界面,但我没有成功(我不知道如何替换它),也许我应该使用另一台服务器?,有什么建议请告诉我, 提前谢谢祝你有美好的一天
【问题讨论】:
-
当您说“我仍然可以使用我在云端的数据库在任何计算机上使用我的 tkinter 界面登录。” 你的意思是你已经先安装了那台计算机上的 tkinter 界面?或者,您是否也想通过服务器提供 tkinter 接口?
-
@BryanOakley 我只想将我的 sqlite 数据库保存在服务器中,而不是我的所有 tkinter 界面应用程序。我已经有我的 sqlite 数据库在本地工作,所以将它保存在服务器中会很棒,但如果不可能,我应该尝试另一个可以存储在服务器中的数据库,实际上我一直在尝试 firebase,但我不能得到它
-
sqlite 是一个基于文件的数据库,没有内置的网络服务器。因此,您要么需要编写自己的访问服务器,并进行身份验证,然后将其托管在 AWS 服务器(或类似服务器)上。没有服务器端功能的唯一方法是将其托管在远程网络驱动器上 - 并将其安装在您的电脑上;但要做到这一点,您的数据会暴露在外,因为 sqlite 数据库没有密码保护。
-
在这种情况下,我建议从示例中删除 tkinter 代码。您真正要问的是如何从服务器提供 sqlite 数据库。
标签: python firebase sqlite tkinter firebase-authentication