void CDEMOView::TestEnd()
{
// TODO: Add your command handler code here
m_bTestBegin=FALSE;
m_bTestRead=FALSE;
KillTimer(2);
CString strTestScore;
strTestScore.Format("此次测试成绩为:%d个字符/分钟",inputRight*60/m_lTestTime);
strNoteMessage="就绪";
if(MessageBox(strTestScore,"打字测试系统",MB_YESNO)==IDNO)
{
Invalidate();
return;
}
Invalidate();
_variant_t vUserId,vTestDate,vSpeed,vRight,vWrong;
_variant_t vPercent,vTestTime,vTestFile,vEndTestTime;
_RecordsetPtr m_pRecordset;
CString m_strSql;
m_strSql="SELECT*FROM scorer";
m_pRecordset.CreateInstance("ADODB.Recordset");
try
{
m_pRecordset->Open((_variant_t)m_strSql,_variant_t((IDispatch *)theApp.m_pConnection,true),
adOpenStatic,adLockOptimistic,adCmdText);
}
catch(_com_error e)
{
AfxMessageBox("读取数据库失败!");
}
m_pRecordset->AddNew();
if(!m_pRecordset->adoEOF)
{
vUserId=theApp.m_strUserID;
vTestDate=theApp.m_strDate;
if(m_lTestTime==0.0)m_lTestTime=1;
vSpeed=inputTotal*60/m_lTestTime;
vRight=inputRight;
vWrong=inputWrong;
vPercent=inputRight*100/inputTotal;
vEndTestTime=((CMainFrame *)AfxGetMainWnd())->m_strTime;
vTestFile=m_strTestFile;
vTestTime=m_lTestTime;
m_pRecordset->PutCollect("UserId",vUserId);
m_pRecordset->PutCollect("TestDate",vTestDate);
m_pRecordset->PutCollect("EndTestTime",vEndTestTime);
m_pRecordset->PutCollect("Speed",vSpeed);
m_pRecordset->PutCollect("Right",vRight);
m_pRecordset->PutCollect("Wrong",vWrong);
m_pRecordset->PutCollect("Percent",vPercent);
m_pRecordset->PutCollect("TestTime",vTestTime);
m_pRecordset->PutCollect("TestFile",vTestFile);
m_pRecordset->Update();
}
m_pRecordset->Close();
((CMainFrame *)AfxGetMainWnd())->m_wndStatusBar.SetPaneText(0,"就绪");
}
写入数据库那段哪里有错?
编译通过了,运行这段时弹出:
Runtime Error!
Program:
This application has requested the Runtime to terminate it in an unusual way.
Please contact the application's support team for more information.
为什么呢?
谢谢了。
回答正确的话会追加分的!
c++连接access数据库mdb数据库没变化
原因如下:1、数据库连接问题:确保能够成功连接到Access数据库。尝试在C++代码中使用数据库连接字符串,并确认是否可以成功连接到数据库。2、数据库引擎问题:确认系统上是否安装了适当的Access数据库引擎。3、查询语句问题:确认查询语句是否正确。确保语句没有语法错误并且符合Access的SQL语法规则。
C++与Access的问题
1.找到你定义的连接数据源的类,在.h文件中 和在Access数据库中 对比下,字段是否对应.(一般都这种错误)2. 在去看看设置的ODBC是不是正确对应Access数据库.
怎样用C++连接并使用access数据库
_ConnectionPtr m_pConnection; \/\/连接access数据库的链接对象 _RecordsetPtr m_pRecordset; \/\/结果集对象 CoInitialize(NULL); \/\/初始化 m_pConnection.CreateInstance(__uuidof(Connection)); \/\/实例化对象 \/\/连到具体某个mdb ,此处的的Provider语句因Access版本的不同而有所不同。try { m...
C++中连接ACCESS的问题
1.有没有导入 #import "msado15.dll" rename_namespace("ADOCG") rename("EOF", "EndOfFile")2.有没有 进行 数据库的连接 Sql.Format("Provider=Microsoft.Jet.OLEDB.4.0;Data Source = XH.mdb");以上代码看不出什么 问题,不知道是不是逻辑问题,你在这个函数 设置个断点跟下,看是哪里...
C\/C++怎样连接ACCESS
1.set dbconnection=Server.CREATEOBJECT("ADODB.CONNECTION")DBPath = Server.MapPath("customer.mdb") \/\/customer.mdb是您的数据库名,您可以在前面加上路径 dbconnection.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" & DBPath SQL="select * from auth where id='" & user_id &"'...
C++中如何连接Access数据库?
\/\/ 设置连接字符串,必须是BSTR型或者_bstr_t类型 _bstr_t strConnect= "Provider=SQLOLEDB;Server=(local);Database=student;";\/\/若数据库在网络上则Server为形如(192.168.1.5,3340)m_pConnection->Open(strConnect,"","",adModeUnknown);\/\/Access这里没有设置密码,参数二是用户名,三是 ...
C++编程 报access violation错误。。
出现这种错误提示,一般是因为程序试图访问“无权”访问的内存区域。
C++编程 报access violation错误
这个是内存访问错误,大部分情况是使用指针不正确引起的,调试下,单步执行,执行到哪行报错了就是哪行的指针有问题,重点检查下就好了
c++调试中出现access violation的问题,代码如下。是否是申请动态数组...
double **c = matrix_t(a,2,2);\/\/调用时候修改为这样 原因是二维数组参数传递问题导致 matrix_t((double **)s,2,2); 这个s是指向第一行的指针的指针 double **matrix_t( double **a_matrix, int krow, int kline ) 这样调用 a_matrix 的大小其实就第一行的大小 --- 或者b[k][...
C++编程 报access violation错误
就是访问了不该访问的空间。比如用指针访问没有定义过的地址。或者数组下标越界。基本就是这两种