【发布时间】:2015-03-12 06:39:40
【问题描述】:
我必须将数据添加到数据库。我在我的 vc++ 应用程序中使用 MySQL 连接器。 我按照下面的方法创建并插入值到该表中的某些列。
if(mysql_query(&dbSql , "CREATE TABLE IF NOT EXISTS perfscoretbl (SessionID CHAR(100) NOT NULL,TagName CHAR(50) NOT NULL ,\
Description CHAR(50) NOT NULL,TagLow CHAR(50) NOT NULL,TagHigh CHAR(50) NOT NULL, ExtremeLow CHAR(50) NOT NULL,ExtremeHigh CHAR(50) NOT NULL,\
AvgDev CHAR(50) NOT NULL,PVHighTime CHAR(50) NOT NULL,PVLowTime CHAR(50) NOT NULL,PV CHAR(50) NOT NULL,\
TotalTime CHAR(50) NOT NULL,FinalDeviation CHAR(50) NOT NULL ,Score CHAR(50) NOT NULL) ")==0)
printf( "Table Created\n");
取决于按钮单击我将不同的值添加到同一个表中的不同列。
CString Temp,sTmp;
sTmp="INSERT INTO perfscoretbl (SessionID, TagName, Description,TagLow,TagHigh,ExtremeLow,ExtremeHigh,AvgDev,Score) VALUES(";
Temp.Format("%s%s%s%s%s%s%s%s%0.2f%s%0.2f%s%0.2f%s%0.2f%s%0.2f%s%0.2f%s%0.2f%s",sTmp,"'",sessionId,"','",pPerfData->sTagName,"','", \
pPerfData->sDesc,"','",pPerfData->fTagLow,"','",pPerfData->fTagHigh,"','",pPerfData->fExtremeLow,"','",pPerfData->fExtremeHigh,"','", \
pPerfData->fError,"','",pPerfData->fTagScore,"')" );
if(mysql_query(&dbSql,Temp)==0)
printf("Succeed");
但是 INSERT 查询失败。当我检查临时字符串时,在字符串的末尾它有额外的字符为 0.00(null)。
Temp = "INSERT INTO perfscoretbl (SessionID, TagName, Description,TagLow,TagHigh,ExtremeLow,ExtremeHigh,AvgDev,Score) VALUES('Ins1_03122015_115222T','DPC101','DEPROP PR','16.00', '18.00','11.26','11.26','100.00','0.00')0.00(null)"
我检查了所有内容,但无法更正。 vc++ mysql连接器中的INSERT查询还有其他方法吗?
【问题讨论】:
标签: mfc mysql-connector c-strings