第九章10.txt

来自「本书在复习C++基础知识后」· 文本 代码 · 共 36 行

TXT
36
字号
void CEx_A9View::OnStuinfoAdd() 
{
	CStuInfoDlg dlg;
	if (dlg.DoModal() != IDOK) return;
	// 向student表添加新的记录,为了防止相同的记录添加,这里先来判断
	_CommandPtr pCmd;
	pCmd.CreateInstance(__uuidof(Command));			// 初始化Command指针
	pCmd->ActiveConnection = m_pConnection;			// 指向已有的连接
	CString strText;
	strText.Format( "SELECT * FROM student WHERE studentname='%s' AND studentno='%s'",
		dlg.m_strName, dlg.m_strNO );
	pCmd->CommandText = _bstr_t(strText);
	_RecordsetPtr pSet;
	pSet.CreateInstance(__uuidof(Recordset));		// 初始化Recordset指针
	pSet = pCmd->Execute(NULL, NULL, adCmdText );	
	if (!pSet->adoEOF) 
{
		MessageBox(dlg.m_strName + " 学生记录已添加过!", "重复添加");
		pSet->Close();
		return;
	}
	// 处理性别字符串
	CString strSex, strTime;
	if ( dlg.m_strSex == "男" ) strSex = "True";
	else strSex = "False";
	// 处理时间字符串
	strTime = dlg.m_tBirth.Format("%Y-%m-%d");	// 按年-月-日格式
	// 添加记录
	strText.Format( "INSERT INTO student(studentname,studentno,xb,birthday,special) \
		VALUES('%s','%s',%s,'%s','%s')",
		dlg.m_strName, dlg.m_strNO, strSex, strTime, dlg.m_strSpec );
	pCmd->CommandText = _bstr_t(strText);	
	pCmd->Execute(NULL, NULL, adCmdText );	
	DispAllRec();
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?