调用CDaoRecordset::AddNew()写入SqlServer2008时显示:“不能更新 50
调用CDaoRecordset::AddNew()写入SqlServer2008时显示:“不能更新。数据库或对象为只读。”但是数据库明明不是只读,而且可以正常读取数据,就...
调用CDaoRecordset::AddNew()写入SqlServer2008时显示:“不能更新。数据库或对象为只读。”但是数据库明明不是只读,而且可以正常读取数据,就是不能写入
CDaoDatabase m_DB;
try
{
CString strDBConn("driver={SQL Server};server=**;uid=sa;pwd=123;database=**");
m_DB.Open(NULL,false,false,strDBConn);
}
catch(CDaoException *e)
{ e->Delete(); }
CDaoTableDef m_OpenTable(&m_DB);
try
{ m_OpenTable.Open(_T("nhtb"));}
catch(CDaoException *e)
{ e->Delete();}
CDaoRecordset rs(&m_DB);
try
{ rs.Open(&m_OpenTable,dbOpenDynaset,dbInconsistent);}
catch(CDaoException *e)
{ e->Delete();}
rs.AddNew();//执行完这句开始出错“不能更新。数据库或对象为只读。” 展开
CDaoDatabase m_DB;
try
{
CString strDBConn("driver={SQL Server};server=**;uid=sa;pwd=123;database=**");
m_DB.Open(NULL,false,false,strDBConn);
}
catch(CDaoException *e)
{ e->Delete(); }
CDaoTableDef m_OpenTable(&m_DB);
try
{ m_OpenTable.Open(_T("nhtb"));}
catch(CDaoException *e)
{ e->Delete();}
CDaoRecordset rs(&m_DB);
try
{ rs.Open(&m_OpenTable,dbOpenDynaset,dbInconsistent);}
catch(CDaoException *e)
{ e->Delete();}
rs.AddNew();//执行完这句开始出错“不能更新。数据库或对象为只读。” 展开
2个回答
2016-01-11
展开全部
类似的问题我遇到过
后来放弃使用数据库了
直接写的文件
这个问题可以这么计算
首先看看你通过什么方式保存数据
比如按着二进制写double型
这样一个数据是8个字节
0.1秒是6000的话一秒钟的数据处理量就是8*6000*10个字节
然后看看你的硬盘的读写速度是每秒多少你就知道保存数据的时候有没有硬件瓶颈了
后来放弃使用数据库了
直接写的文件
这个问题可以这么计算
首先看看你通过什么方式保存数据
比如按着二进制写double型
这样一个数据是8个字节
0.1秒是6000的话一秒钟的数据处理量就是8*6000*10个字节
然后看看你的硬盘的读写速度是每秒多少你就知道保存数据的时候有没有硬件瓶颈了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
http://q.cnblogs.com/q/53285/
看看是不是类似问题
看看是不是类似问题
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询