首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

vc连接数据库有关问题

2013-03-01 
vc连接数据库问题vc连接mysql数据库,用mfc的数据库类连接的。在mysql数据库中建了一个只有一列的表R,类型为

vc连接数据库问题
vc连接mysql数据库,用mfc的数据库类连接的。在mysql数据库中建了一个只有一列的表R,类型为double,H是一个double数组。

try  
{  
CDatabase db;
        if( db.Open("noahsample"))  
{   db.ExecuteSQL("insert into R values('+H[0]+')");  
db.Close();  
}  
}  
catch (CDBException* e)  
{  
AfxMessageBox( e->m_strError);  
e->Delete();  
}      
插入数据时出现错误1265 Data truncated for column 'r1' at row 1.
debug过程中H[0]为0.16771832853555679,我想在数据库中将其存为1.677183e-001,请问各位大神如何解决? 数据库 mfc
[解决办法]

#include <stdio.h>
int main() {
double d=0.16771832853555679;//我想在数据库中将其存为1.677183e-001
double e;
char s[20];

sprintf(s,"%.7g",d);
sscanf(s,"%lf",&e);
printf("%.7le\n",e);
    return 0;
}
//1.6771830e-001

[解决办法]
char s[1024];
sprintf(s,"insert into R values(%7le)",H[0]);
printf("SQL=[%s]\n",s);
db.ExecuteSQL(s);

[解决办法]
或者
char s[1024];
sprintf(s,"insert into R (r1) values (%7le)",H[0]);
printf("SQL=[%s]\n",s);
db.ExecuteSQL(s);

热点排行