Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/364.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python MysqlDb和Pyqt4比较变量_Python_Mysql_Pyqt_Mysql Python - Fatal编程技术网

Python MysqlDb和Pyqt4比较变量

Python MysqlDb和Pyqt4比较变量,python,mysql,pyqt,mysql-python,Python,Mysql,Pyqt,Mysql Python,我在mysql中有一个数据库,我在QT4中的一个应用程序中工作,我正在使用Mysqldb连接器,我已经成功地连接到数据库,但是当我查询表t\u usuarios时,我不知道如何评估它。你能帮助我吗?提前谢谢 我的部分代码: def chequeouser(self): passwdcheck = str(txt_password.text()) usuariover = str(txt_usuario.text()) # datosLogin = "SELECT * FR

我在mysql中有一个数据库,我在QT4中的一个应用程序中工作,我正在使用Mysqldb连接器,我已经成功地连接到数据库,但是当我查询表
t\u usuarios
时,我不知道如何评估它。你能帮助我吗?提前谢谢

我的部分代码:

def chequeouser(self):
    passwdcheck = str(txt_password.text())
    usuariover =  str(txt_usuario.text())
   # datosLogin = "SELECT * FROM t_usuarios WHERE id_usuario = 'usuario' AND pasword = 'password'
    cursor = dbase.cursor()
    cursor.execute("SELECT id_usuario, password FROM t_usuarios WHERE id_usuario = %s AND password = %s", (usuariover, passwdcheck))
    checar = cursor.fetchone()
感谢回答我的用户。。。我做了,但做了如下修改

 passwdcheck = str(txt_password.text())
    usuariocheck =  str(txt_usuario.text())
   # datosLogin = "SELECT * FROM t_usuarios WHERE id_usuario = 'usuario' AND pasword = 'password'
    cursor = dbase.cursor()
    cursor.execute("SELECT id_usuario, password FROM t_usuarios WHERE id_usuario = %s AND password = %s", (usuariocheck, passwdcheck))
    row = cursor.fetchone()
    if row  == None:
        print "no data:"+ usuariocheck
        return 
    if row[1] == passwdcheck:
        print "user and password combination is correct" +usuariocheck
    else :
        print "your input is incorrect" 
我想这样做作为回答,但我不确定这是否正确

fetchone()
返回一行数据。第一项是第[0]行,第二项是第[1]行,以此类推

例如:

def chequeouser(self):
    passwdcheck = str(txt_password.text())
    usuariover =  str(txt_usuario.text())
   # datosLogin = "SELECT * FROM t_usuarios WHERE id_usuario = 'usuario' AND pasword = 'password'
    cursor = dbase.cursor()
    cursor.execute("SELECT id_usuario, password FROM t_usuarios WHERE id_usuario = %s AND password = %s", (usuariover, passwdcheck))
    row = cursor.fetchone()
    if not row:
       print "no rows!"
       return
    if passwdcheck == row[1]:
       print 'MATCH for user', row[0]
    else:
       print 'uhoh'

我也用过。。。这个res=str(cursor.rowcount),但在PHP中也返回0。。。我会用这个。。。。[code]if(!$result | | mysql_num_rows($result)HandleError(“登录时出错”。“用户名或密码不匹配”);return false;}return true;[/code]但在python中我不知道……row=cursor.fetchone()if passwdcheck==row[1]:打印“用户匹配”,row[0]否则:打印“uhoh”…#####抛出此错误…如果passwdcheck==行[1]:TypeError:“NoneType”对象没有属性“getitem”,如果我将“cursor.fetchone()”更改为cursor.fetchall()·····>>如果passwdcheck==行[1]:索引器错误:元组索引超出range@mitsuzeroblackout可能
SELECT
与任何行都不匹配,因此
fetchone()
没有返回任何行。我已经更新了代码。只是我做了一些更改,谢谢@shavenwarthog…row=cursor。如果row==None,则fetchone()打印“在usuarios中无”+如果第[1]行==passwdcheck:print“usuario existe:”+usuariocheck else:print“错误:需要检查输入”