CVSTRACMAIL SQLITE DEV 总结

王朝mssql·作者佚名  2006-01-09
宽屏版  字体: |||超大  

CVSTRACMAIL SQLITE DEV 总结

2-9-2005-00:13 Wed [Dev开发]

从网上下载了一个SQLITEBROWSER,据说是可以对SQLITE数据库进行可视化数据库操作的。但是不知道为什么,我从CVSTRAC里面拷贝出来的DB文件,无论是使用SQLITE3还是使用BROWSER还是不能正常打开,报告不是正常的数据库。

根据奇怪的是如果我使用SQLITE3新建一个数据库,0K的文件,然后使用SQLITEBROWSE进行打开,然后关闭,再打开CVSROOT.DB,那么就很正常,而我使用代码则不能正常操作。

打开DB文件一看,SQLITE2.1,难道是这个原因,使用SQLITE2.8就可以正常打开了。

这也是我不喜欢开源软件的一个原因,变动有时候太大了。有时候大家责难微软的WINDOWS不够先进什么的,但是人家从商业角度出发,增加系统的延续性,有时不得不损失一些东西YippeeSoft开心软件

于是改用2.*版本的CppSQLiteDBYippeeSoft开心软件

同样以下代码中将CPPLITE3*改为CPPLITE*就可以了。

这样根据原代码中的SQL语句就能取得任务单相应的信息了。再加上SMTP部分代码以及SSL动态连接库,基本上就能完成了。YippeeSoft开心软件

虽然我已经基本了解,但是现在不能继续作了,也不想继续作了。

1、我现在在家里,因为MONEY的原因,不敢申请一个月99元的宽带包月,只能通过MODEM上网,不方便,同样的,调试EMAIL部分也不方便。YippeeSoft开心软件

2、再则现在我也没有办法调试SSL部分,而且我也不喜欢带着一个SQLITE DLL,而我上网下载资料也不方便

3、最重要的是:我发现我CVS提交等的EMAIL通知软件CVSMAIL不是开源的,即使是开源的,我也还得再加上一个SSL,如果这样的话,我还不如开一个SSL STUNNEL软件算了。

所以,这个就算告一个段落了

// TODO: Add extra validation here

const char* gszFile = "C:\\cvsroot.db";

CppSQLite3DB db;

// cout << "SQLite VersiYippeeSoft开心软件on: " << db.SQLiteVersion() << endl;

TRACE((char *)db.SQLiteVersion);

// remove(gszFile);

db.open(gszFile);

CString STicketSQL = "SELECT type, status, origtime, changetime, derivedfrom, ";

STicketSQL+="version, assignedto, severity, prio

rity, subsystem, owner, ";

STicketSQL+="title, description, remarks, contact FROM ticket WHERE tn=%d";

CString strtick;

strtick.Format(STicketSQL,103);

CppSQLite3Query q = db.execQuery(strtick.GetBuffer(0));

strtick.ReleaseBuffer();

for (int i=0;i<15;i++)

{

TRACE(q.getStringField(i));

}

// cout << endl << "emp table exists=" << (db.tableExists("emp") ? "TRUE":"FALSE") << endl;

CDialog::OnOK();

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
© 2005- 王朝网络 版权所有