shadowppp 发表于 2020-3-2 21:29

Python简单连接数据库问题

本帖最后由 shadowppp 于 2020-3-2 22:28 编辑

新人正在学习Python,做了一个简单的登录框,问题如下:

如果用户名密码正确的话,可以弹出登陆成功对话框,但是如果输入用户名密码错误,则不会弹出,pycharm中会报一大堆错。。请问是什么原因,谢谢!

def usr_log_in():
    # 输入框获取用户名密码
      usr_name = var_usr_name.get()
    usr_pwd = var_usr_pwd.get()


    if usr_name == '' or usr_pwd == '':
      tk.messagebox.showinfo(message='用户名或密码为空')
    else:
      connect = pymssql.connect('192.168.1.1', usr_name, usr_pwd, 'python_test',charset='utf8')# 服务器名,账户,密码,数据库名
      if connect:
            tk.messagebox.showinfo(title='welcome', message='登陆成功')
      else:
            tk.messagebox.showinfo(message='用户名或密码错误')


补充说明:

数据库服务是正常开启的,因为用Navicat或者用户名密码输入正确后都可以正常连接,就是我希望输入错误后可以弹出“用户名或密码错误对话框”,目前输入错误弹不出来。

那年听风 发表于 2020-3-2 21:40

神枪泡泡丶 发表于 2020-3-2 21:48

可以把报错发出来看看

德古拉伯 发表于 2020-3-2 21:52

把报错信息发出来看看,你看看你数据库服务开了没

大雨大大 发表于 2020-3-2 22:02

了解一下语法try

jfgood 发表于 2020-3-2 22:02

端口号没有,不知道你的是不是默认的?usr_name, usr_pwd设置全局变量了?如果不是需要传递参数到函数中

shadowppp 发表于 2020-3-2 23:16

jfgood 发表于 2020-3-2 22:02
端口号没有,不知道你的是不是默认的?usr_name, usr_pwd设置全局变量了?如果不是需要传递参数到函数中

大佬,如果用户名密码输入对了,是可以正常连接并弹出登陆成功的对话框,如果输入错误,弹不出来登录失败的对话框,方便的时候麻烦帮看一下,谢谢。

shadowppp 发表于 2020-3-2 23:17

那年听风 发表于 2020-3-2 21:40
密码错误必定报错啊,其他的不知道也得知道这个啊

大佬,我的意思是如果用户名密码输入对了,是可以正常连接并弹出登陆成功的对话框,如果输入错误,弹不出来登录失败的对话框,方便的时候麻烦帮看一下,谢谢。

dyliuyunfei 发表于 2020-3-3 09:35

TK的话参考这个看能行不:
https://blog.csdn.net/m_buddy/article/details/80105154

小菜鸟一枚 发表于 2020-3-3 09:49

我没学过Python,但是它没异常处理语句吗?我刚开始学习,只知道c语言有函数库,C++有try catch。{:1_904:}
页: [1] 2
查看完整版本: Python简单连接数据库问题