我的程序中,许多地方要用到数据库(access),添加,删除,修改等.
在管理用户下一直没有问题.
但最近才发现,在普通用户权限下,数据库的添加,删除
没有问题,却不能修改. 如何解决?数据库连接
bool CICSApp::Connct_db(CString str) //str access文件
{
m_pConnection.CreateInstance(__uuidof(Connection));
try
{
CString str1="Provider=Microsoft.Jet.OLEDB.4.0;DataSource=";
str1 += (str);
m_pConnection->Open(_bstr_t(str1),"","",adModeUnknown); }
catch(_com_error e)
{
AfxMessageBox(_T("DB is err!"));
return false;
}
} //SQL执行
_RecordsetPtr CICSApp::SqlExe(CString str)
//str SQL语句 在普通用户权限下select,add,delete OK
//Update 不能执行
{
m_pRecordset.CreateInstance(__uuidof(Recordset));
try
{
m_pRecordset->Open(_bstr_t(str),m_pConnection.GetInterfacePtr(), adOpenDynamic,adLockOptimistic,adCmdText);
}
catch(_com_error *e)
{
AfxMessageBox(e->ErrorMessage());
m_pRecordset = NULL;
}
return m_pRecordset;
}
在管理用户下一直没有问题.
但最近才发现,在普通用户权限下,数据库的添加,删除
没有问题,却不能修改. 如何解决?数据库连接
bool CICSApp::Connct_db(CString str) //str access文件
{
m_pConnection.CreateInstance(__uuidof(Connection));
try
{
CString str1="Provider=Microsoft.Jet.OLEDB.4.0;DataSource=";
str1 += (str);
m_pConnection->Open(_bstr_t(str1),"","",adModeUnknown); }
catch(_com_error e)
{
AfxMessageBox(_T("DB is err!"));
return false;
}
} //SQL执行
_RecordsetPtr CICSApp::SqlExe(CString str)
//str SQL语句 在普通用户权限下select,add,delete OK
//Update 不能执行
{
m_pRecordset.CreateInstance(__uuidof(Recordset));
try
{
m_pRecordset->Open(_bstr_t(str),m_pConnection.GetInterfacePtr(), adOpenDynamic,adLockOptimistic,adCmdText);
}
catch(_com_error *e)
{
AfxMessageBox(e->ErrorMessage());
m_pRecordset = NULL;
}
return m_pRecordset;
}
解决方案 »
- 在一个对话框中,用一个按钮直接结束程序时中断
- 怎么才能访问彩色位图文件的像素数据啊?用到哪些函数啊?或那些类?
- 进程无法取得CPU资源的问题
- 请问如何缩放对话框中的icon?(不是设置大图标和小图标)
- 用什么函数更改注册表中一个子键的名称
- 自己写的软件如果要从注册表读自身需要的信息,一般写在注册表的哪个路径呢
- 关于视图调用和问题!
- vc++6.0 不能用 Microsoft IMAPI 写刻录程序吗?我已经安装了SDK,我的程序就是不能编译,
- 关于回吊函数的问题
- 从视频卡获得图像的RGB信息,怎样用CxImage把图像压缩到内存
- VC报错问题,关于Link报错的。。
- 新注册个号,有分了,这回能帮看看不?
str1 += (str);
m_pConnection->Open(_bstr_t(str1),"","",adModeUnknown);.....
m_pRecordset->Open(_bstr_t(str),m_pConnection.GetInterfacePtr(), adOpenDynamic,adLockOptimistic,adCmdText);
但是在普通用户权限下,你无法对数据库(access)进行修改