[英]How to insert a record into Microsoft Access using MFC?
如何在 Microsoft Access 中插入记录?
CString SqlString; CString name="I want to add this variable in Table3"; SqlString = "INSERT INTO Table3 (Name,Numbers) VALUES (name,099)";
当我这样做时,会出现以下错误:
数据库错误:参数太少。预期 1。
这是我自己的应用程序的一个片段:
BOOL CCommunityTalksApp::SetRecordForTalkNumber(int iTalkNumber, UINT uID, CString &rStrError)
{
CDatabase *pDatabase;
CString strSQL, strField;
BOOL bOK;
pDatabase = theApp.GetDatabase();
if(pDatabase != nullptr)
{
if (iTalkNumber == 9999)
strField = _T(" ");
else
strField.LoadString(uID);
strSQL.Format(_T("INSERT INTO [Public Talk Titles] ([Theme], [Category], [Talk Number]) VALUES ('%s', 'NS', %d)"), strField, iTalkNumber);
TRY
{
pDatabase->ExecuteSQL((LPCTSTR)strSQL);
bOK = TRUE;
}
CATCH(CDBException, Except)
{
rStrError = Except->m_strError;
bOK = FALSE;
}
END_CATCH
}
return bOK;
}
如你看到的:
[
和]
包装表和字段名称以解决空格问题。所以:
SqlString = "INSERT INTO Table3 (Name,Numbers) VALUES (name,099)";
会是这样的:
SqlString = "INSERT INTO [Table3] ([Name],[Numbers]) VALUES ('name',099)";
我很欣赏您的表/字段名称不需要方括号。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.