- 1、本文档共14页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
使用CVI软件平台进行Mysql数据库开发简介
使用Labwindow CVI软件平台进行Mysql数据库开发简介
针对初学者进行数据库开发,不是很了解相应过程,现将我刚刚成功的验证过程,与大家分享。文中主要描述不能使用映射方式修改数据库中数据的问题。
CVI版本为9.0(348),NI SQL Toolkit 2.2
请前往 www.NI.com 下载试用版软件系统!
MySQL版本为5.6.22
安装MySQL过程可参考网上的说明,
如网络上,MySQL下载与安装安装图解
/article/f79b7cb3a25e759144023ee7.html
请前往/downloads/
处下载开源数据库系统MySQL
使用王建新老师的例程进行学习
更改了修改数据按钮中的代码
备注:
通过更换SQL Toolkit2.1改为2.2后,还是不能修改MySQL已存在数据库中数据的问题。
不使用映射的方式进行更新数据库数据,这种方式能满足Access创建的数据库,但是不能修改MySQL创建的数据库,原因不知,希望有高手指点 weiyizhineng@QQ.com
更改为使用SQL直接进行更改数据,实现更改表中一条数据的功能。
谢谢
LabWindows/CVI交流群各位老师的奉献!修改后的代码:
#include cvi_db.h
#include ansi_c.h
#include utility.h
#include formatio.h
#include cvirte.h
#include userint.h
#include databasesample.h
static int hdbc;
static int globalvalue;
static int panelHandle;
int main (int argc, char *argv[])
{
if (InitCVIRTE (0, argv, 0) == 0)
return -1; /* out of memory */
if ((panelHandle = LoadPanel (0, databasesample.uir, PANEL)) 0)
return -1;
//建立数据库联接,并获得联接句柄
hdbc = DBConnect (DSN=client);
DisplayPanel (panelHandle);
RunUserInterface ();
DiscardPanel (panelHandle);
//当退出应用程序时,关闭数据库连接
DBDisconnect (hdbc);
return 0;
}
int CVICALLBACK QuitCallback (int panel, int control, int event,
void *callbackData, int eventData1, int eventData2)
{
switch (event)
{
case EVENT_COMMIT:
QuitUserInterface (0);
break;
}
return 0;
}
//删除记录
int CVICALLBACK deletedata (int panel, int control, int event,
void *callbackData, int eventData1, int eventData2)
{
Point colrow;
int resultcode;
int hstat;
int value = 0;
switch (event)
{
case EVENT_COMMIT:
//获得活动表格单元
GetActiveTableCell (panelHandle, PANEL_TABLE, colrow);
//获得活动单元格所在行,且列数为第1列单元格内的数据
GetTableCellVal (panelHandle, PANEL_TABLE, MakePoint(1, colrow.y), value);
//当联接数据库成功时进行下面操作
if (hdbc 0)
{
//对于带参数的数据库查询,首先准备执行SQL查询声明
hstat = DBPrepareSQL (hdbc, DELETE FROM table2 WHERE ID = ?);
//创建一个整型量参数预备查询方式
resultcode = DBCreateParamInt (hstat, , DB_PARAM_INPUT, value);
//执行
文档评论(0)