c++ - .txt 至 sql C++,带有

  显示原文与译文双语对照的内容
0 0

我想从txt文件读取数据并将它的插入到SQLite数据库表中。 我准备了一个代码,但它不工作。

txt文件中的示例行如下所示;',1417392060.000000','1.245 430','1.245 6','1.244 69','1"'

和代码;


 sqlite3 *db;
 char *zErrMsgt = 0;
 int rct;
 int rch;
 int rchi;
 
 rct = sqlite3_open("final.db", &db);
 if( rct ){
 fprintf(stderr,"Can't open database: %sn", sqlite3_errmsg(db));
 exit(0);
 }else{
 fprintf(stdout,"Opened database successfullyn");
 }
string resline;
ifstream res("Res.txt");
while(getline(res,resline)){
 string sqlli ="INSERT into FOREXNEW(DATE,OPEN,HIGH,LOW,CLOSE) VALUES ("getline(res,resline)");";
 rchi = sqlite3_exec(db, sqlli.c_str(), callback, 0, &zErrMsgt);
 if( rchi!= SQLITE_OK ){
 cout <<"SQL error:" <<zErrMsgt;
 sqlite3_free(zErrMsgt);
 }}

sqlite3_close(db);

其他建议和解决方案也将被欣赏:感谢你。

时间: 原作者:

0 0

Getline不返回字符串;它将它复制到第二个参数中传递的变量。 更改错误行:


 string sqlli ="INSERT into FOREXNEW(DATE,OPEN,HIGH,LOW,CLOSE) VALUES ("getline(res,resline)");";

到:


 string sqlli ="INSERT into FOREXNEW(DATE,OPEN,HIGH,LOW,CLOSE) VALUES ("+resline+");";

检查它是否能正常工作。

原作者:
...