vc6.0远程连接mysql_VC6.0【学习心得】如何把串口数据通过socket发送到远程服务器并存入数据库。...

本文介绍了如何使用VC6.0将串口接收到的DS18B20温度传感器数据通过socket发送到远程服务器,并利用ADO库将数据存储到MySQL数据库。过程中提到了Taltech软件用于数据转换,USR_TCP232_Test进行服务器端数据接收验证,以及遇到的数据库连接问题和ODBC配置的潜在解决方案。
摘要由CSDN通过智能技术生成

【我真的没有很花心要写这么多语言,但是我们老师总是有杂七杂八的项目要交给我们做】

之前已经做到了使用DS18B20温度传感器,通过keil u version4把程序烧到板子里,在串口调试助手里面已经看到了串口的温度数据。

然后我使用Taltech这个软件,将串口数据转为socket发送到远程电脑上,

2d602a07178470ddaf6458bc9cd702ce.png

里面只需要填写 Remote Host IP Address和Remote Port,IP使用20013。

只需要填写IP地址和端口号就行了。

在服务器端。使用USR_TCP232_Test这个软件来查看数据是否接收到。

e195e6f366c9cd249adb9017211e0b91.png

选择Tcp Server,启动20013端口的监听,这个端口和刚刚TalTech上设置相同,然后看看能否收到数据。

这是我所收到的数据。

接着就是传到数据库里面去了。#include "ADO.h"

BOOL CMySocketRecvDlg::SaveDataToDB(CString strRecv)

{

CString m_strConnectionString="";

CString strDbType="MySQL";

CString m_strDBUser="ylx",m_strDBPassword="ylx",m_strServerName="ylx";

CAdoConnection* m_pConnection=NULL;

CAdoRecordSet* m_pRecordSet=NULL;

BOOL bOk=FALSE,m_bConnected=FALSE;

if(strDbType =="MySQL")

{

m_strConnectionString="DSN=ADOLinkMySQL;User ID="+ m_strDBUser+";password="+ m_strDBPassword+";Data Source="+m_strServerName+";";

}

try

{

m_pConnection=new CAdoConnection();

if(m_pConnection->Open(m_strConnectionString)){

bOk=TRUE;

m_bConnected=TRUE;

}else{

ShowMsg("打开连接不成功!");

}

//保存数据

CString strDeviceId,strDeviceName,strTemperature,strHumidity;

GetInfoFromReceiveData(strRecv,strDeviceId,strDeviceName,strTemperature,strHumidity);

CString strSql;

strSql="insert into video_record(device_id,device_name,temperature,humidity,register,register_time) values('"+strDeviceId+"','"+strDeviceName+"','"+strTemperature+"','"+strHumidity+"','admin','"+CTime::GetCurrentTime().Format("%Y-%m-%d %H:%M:%S")+"')";

ShowMsg(strSql);

m_pConnection->Execute(strSql);

ShowMsg("保存进了数据库");

//然后释放连接

m_pConnection->Close();

delete m_pConnection;

}

catch(...)

{

ShowMsg("打开数据库出错");

bOk=FALSE;

}

return 0;

}

做到这里的时候,程序运行的时候显示“打开连接不成功!”然后“保存进了数据库”。然后打开MySQL发现表还是没有新的数据记录。

猜测是没有连上数据库,但是程序还是继续运行了所导致的。

连不上数据库的可能是没有配置ODBC数据源。

明天希望能解决这个问题。

【标签里面没有C语言好难过】

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值