
一、力控组态和数据库交互时可能出现问题的地方:
1、如果利用关系型数据库SQL Server
2000存入力控产生的数据,必须在组态中建立绑定表。在建立过程中,字段名必须和SQL Server
2000中数据表中的字段名字相同,否则不能数据的传递;
2、建立的绑定表的名字最好不要和SQL Server 2000中数据表的名字相同,否则也不能传递数据;
3、建立数据库 *** 作时,可以在动作条件中写入脚本,写脚本时应注意绑定表和SQL Server
2000中数据表的前后关系,应该是SQL Server 2000中数据表在前边,绑定表在后边才可以。
二。检查数据库 *** 作错误的时候,可以利用下边方法进行:
1、首先在力控组态中定义一个字符型的中间变量ErrorMe
2、打开脚本编辑器,例如在写条件动作的脚本时,选择SQLLastError()函数,确定把最后一条数据库 *** 作错误存放到ErrorMe中;利用MsgBox()函数以对话框的形式显示错误信息即可
SQLLastError(ErrorMe)
MsgBox(ErrorMe)
1)创建ui界面 (2)导入头文件 一、自动提交模式 二、手动提交模式 (1)构造函数中的代码 (2) “提交”按钮的槽函数 在ui界面导入一个Table View。 这个控件可以显示表格,在代码中我们通过setHeaderData()函数可以自定义每列的名称。 需要用到以下头文件,QSqlDatabase用于连接数据库,QMessageBox用于d出对话框,QSqlError用于显示数据库的错误信息,QSqlQuery和QSqlTableModel用于 *** 作数据库。 #include <QWidget>#include <QSqlDatabase>#include <QMessageBox>#include <QSqlError>#include <QString>#include <QSqlQuery>#include <QSqlTableModel>在Qt窗口显示的表格中改动数据,然后点击回车,数据库中的表格中的数据就自动更新了。 注意,在这里必须是敲击回车才会进行数据库的更新,如果直接用鼠标切换到其他的地方是不会更新数据库的。 //连接数据库 QSqlDatabase db=QSqlDatabase::addDatabase("QMYSQL")db.setHostName("127.0.0.1")db.setUserName("root")db.setPassword("123456")db.setDatabaseName("aaa2")if(db.open()==false){ QMessageBox::warning(this,"waring",db.lastError().text())} //实例化model model = new QSqlTableModel(this)//将模型设置到视图 ui->tableView->setModel(model)//给model设置数据表,前提条件是数据库已经打开了 model->setTable("student")欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)