INSERT而不从CDatabase或CRecordset派生

时间:2013-03-12 16:42:49

标签: windows visual-studio-2010 mfc odbc

我直接使用CDatabaseCRecordset(不从这些类派生)。例如,SELECT语句如下所示:

CDatabase db;
db.OpenEx(_T("DSN=mydatabase"));
CRecordset rs(&db);
rs.Open(CRecordset::forwardOnly, _T("SELECT id, name FROM user"));
while (!rs.IsEOF()) {
    CString name; // Just for demonstration
    rs.GetFieldValue(1, name);
}

使用此方法制作INSERTUPDATE语句的正确方法是什么?

  • 没有CRecordset::SetFieldValue
  • 我可以构建整个SQL字符串(包括值)并执行CDatabase::ExecuteSQL但我不喜欢这个解决方案,而是喜欢以某种方式绑定参数。

1 个答案:

答案 0 :(得分:1)

我认为this article的作者已经完全按照您的要求实现了