pyqt-PyQt:获取lineEdit值插入到mysql失败

问题描述

PyQt:获取lineEdit值插入到mysql失败

我想把lineEdit的输入值一边显示到tablewidegt,一边插入到mysql。由于显示程序是提取mysql的数据再显示,所以显示界面是空白,并且mysql的数据也没有改变.


    from PyQt4 import QtCore, QtGui,QtSql
    import sys
    from test2 import Ui_MainWindow
    #test2是我用QT desigenr写的UI程序
    import chardet

    class StartQt4(QtGui.QMainWindow,Ui_MainWindow):
     def __init__(self, parent=None):
        QtGui.QWidget.__init__(self, parent)
        self.setupUi(self)
        self.db = QtSql.QSqlDatabase.addDatabase("QMYSQL")
        self.db.setHostName("localhost")
        self.db.setDatabaseName("test")   #set address
        self.db.setUserName("root")
        self.db.setPassword("")
        if (self.db.open()):
            self.showdata()
        else:
            print "failed"
        QtCore.QObject.connect(self.pushButton, QtCore.SIGNAL("clicked()"), self.add)

     def add(self):
        name0 = str(self.lineEdit.text())
        name1 = str(self.lineEdit_2.text())
        name2 = str(self.lineEdit_3.text())
        print type(name0)
        self.q=QtSql.QSqlQuery(self.db)
        self.q.exec_("insert into qiu (name0,nam1,name2) value ('%s','%s','%s')" %(''.join(name0),''.join(name1),''.join(name2)))
        self.q.exec_("commit")
        lastrow=self.tableWidget.rowCount()
        self.tableWidget.insertRow(lastrow)
        self.showdata()    

     def  showdata(self):
        q=QtSql.QSqlQuery(self.db)
        q.exec_("select * from qiu")
        for i in range(0,self.tableWidget.rowCount()):
            q.next()
            name0 = q.value(0).toString()
            name1 = q.value(1).toString()
            name2 = q.value(2).toString()
            self.tableWidget.setItem(i, 0, QtGui.QTableWidgetItem(name0))
            self.tableWidget.setItem(i, 1, QtGui.QTableWidgetItem(name1))
            self.tableWidget.setItem(i, 2, QtGui.QTableWidgetItem(name2))

    if __name__ == "__main__":
    app = QtGui.QApplication(sys.argv)
    myapp = StartQt4()
    myapp.show()
    sys.exit(app.exec_())

执行结果

解决方案

先打印sql语句 看是否语法正确

时间: 2025-01-03 15:59:00

pyqt-PyQt:获取lineEdit值插入到mysql失败的相关文章

将数据插入到MySQL表中的详细教程_Mysql

将数据插入到MySQL表,需要使用SQL INSERT INTO命令.可以将数据插入到MySQL表使用mysql>提示符下或使用任何脚本,如PHP.语法: 下面是通用的SQL语法INSERT INTO命令来插入数据到MySQL表: INSERT INTO table_name ( field1, field2,...fieldN ) VALUES ( value1, value2,...valueN ); 要插入的字符串数据类型,所有的值需要双或单引号,例如: - "value"

php监测数据是否成功插入到Mysql数据库的方法_php技巧

前言 本文主要介绍的是php代码中监测数据是否成功插入到Mysql数据库,可以使用这两种方式.下面话不多说,来看看详细的解决方法. 解决方法 第一种就是通过mysql_query()函数来判断: if(mysql_query('insert into ......'))//插入成功后返回true,失败返回false echo "成功"; else echo "失败"; 第二种就是通过mysql_affected_rows()函数返回值是否大于0来判断: mysql_

用jquery做的用户名文本框,怎么将获取的值存入sql数据库呢?

问题描述 用jquery做的用户名文本框,怎么将获取的值存入sql数据库呢? 用jquery做的用户名文本框,怎么将获取的值存入sql数据库呢? 希望指教! 解决方案 Controller层中来获取该网页提交的数据,并调用service层中的代码执行SQL的插入. 这是一个比较标准的MVC过程 解决方案二: http://www.w3school.com.cn/jquery/ajax_ajax.asp 解决方案三: http://www.cnblogs.com/DareOnly/archive/

html-ASP中HTML控件,UI层获取文本值问题

问题描述 ASP中HTML控件,UI层获取文本值问题 asp:code 姓名 年龄 住址 备注 Cs:code public partial class AddUserInfo : System.Web.UI.Page { UserInfoManager userinfoManager = new UserInfoManager(); protected string userName; protected int age; protected string address; protected

编码-php插入到mysql数据库中文乱码,数据库中的中文可以正常显示

问题描述 php插入到mysql数据库中文乱码,数据库中的中文可以正常显示 PHP获取HTML的POST内容到数据库,插入以后显示乱码,我数据库编码已经设置成UTF8了,然后插入之前我ECHO出来也不是乱码,但是到数据库里面就成乱码了,不知道为什么呢,问之前我已经搜索过了,说要先执行 mysql_query("SET NAMES 'uft8'",$link); 这样,我这样执行以后然后刷新还是一样 解决方案 http://www.111cn.net/phper/31/59059.htm

A表插入数据 mysql 触发器

问题描述 A表插入数据 mysql 触发器 三个表 A 表 温度 压力 B表 温度最小 温度最大 压力最小压力最大 C表 (id 报警类型 ) 当向 A表插入数据后 如果 A表中的温度 低于B表中的最小温度或高于再大温度 A表中的压力 低于B表中的最小压力或高于再大压力 则向C表中添加记录 1 值为温度 2 值为压力 如果在范围内 则不需要向c表添加记录 解决方案 create trigger tg4 after insert on A 表 for each row begin //放你的逻辑

JavaScript实现将文本框的值插入指定位置的方法_javascript技巧

本文实例讲述了JavaScript实现将文本框的值插入指定位置的方法.分享给大家供大家参考.具体如下: 这里实现JavaScript将文本框的值插入当前面指定位置,这在一些表单提交场合或许我们都用到过,本代码段是将文本框的值写入到当前页的body区域内,如果你设置有其它的文本框,则可以值赋给这些文本框,可以让使用表单的用户免去输入的麻烦. 运行效果如下图所示: 具体代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional

javascript获取select值的方法分析

  本文实例讲述了javascript获取select值的方法.分享给大家供大家参考.具体分析如下: 1. 获取显示的汉字 代码如下: document.getElementById("bigclass").options[window.document.getElementById("bigclass").selectedIndex].text 2. 获取数据库中的id 代码如下: window.document.getElementById("bigc

Jquery each方法跳出循环,并获取返回值实例讲解

 这篇文章主要是对Jquery each方法跳出循环,并获取返回值进行了详细的介绍,需要的朋友可以过来参考下,希望对大家有所帮助 return false:将停止循环 (就像在普通的循环中使用 'break'). return true:跳至下一个循环(就像在普通的循环中使用'continue').  代码如下: function test(){ var success = false; $(..).each(function () {    if (..) {        success =