紧急求救:对一张表中某些数据无法delete,且确认不是表锁定,行锁定,其他表都可以??? 没道理啊!如果表没被锁定,怎么sql语句会被挂起呢?搂主如何确定表未被锁定的呢? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 看看你是不是在别的地方做了什么操作搞锁了,比如说insert update 什么的 我也遇到了同样的情况,代码如下:void CNnDlg::OnButtonDeljpg() { // TODO: Add your control notification handler code here CString str1; m_jpg_view.GetText(m_jpg_view.GetCurSel(),str1); CJPGSet deljpg; m_pDB=new CDatabase; m_pJPGQviewSet=new CJPGSet(m_pDB); if(m_pJPGQviewSet->IsOpen()) { m_pJPGQviewSet->Close(); } m_pJPGQviewSet->Open(); if( !m_pJPGQviewSet->CanRestart( ) ) return; // Unable to requery if( !m_pJPGQviewSet->Requery( ) ) //重新查询 // Requery failed, so take action return; deljpg.Open(AFX_DB_USE_DEFAULT_TYPE,"select * from JPG_QVIEW WHERE ID_QVIEW ="+str1); AfxMessageBox(deljpg.m_ID_QVIEW); deljpg.Delete(); deljpg.Close(); AfxMessageBox("编号为"+str1+"的JPG记录已经删除!"); m_jpg_view.ResetContent(); OnButtonJpg();}运行到deljpg.Delete(); 就抛出异常了,显示的信息是:“更新或删除未涉及任何数据行‘但是这条记录可以被AfxMessageBox()显示出来,证实记录集不是空的,不知道是什么问题。 popoxx你这种情况可以直接到数据库中删除一下,看否可以!我这种问题好像真的很难解决,曾经问过高手,说不知道怎么解决 把这个表和其他有约束关系的表作成临时表,试验删除,看看alertlog。看看统计值,包括表空间、回滚段、cache的,应该不会是这些问题。会不会有递归,造成死循环? 看看表上有没有外键,触发器在delete操作被阻塞时再去看一下锁的情况 你肯定有备份吧,truncate试试 有阻塞当然就有锁了察看V$lock,V$locked_object等视图 把那个不能删除的表的触发器都禁用吧:ALTER TABLE TABLENAME DISABLE ALL TRIGGERS oracle.exe突然进程cpu99%了, Fatal NI connect error 12537 新建的用户想要查询视图,应该赋予哪些权限 求各位大牛SQL解答啊?谢谢啊 大数据量在查询的同时实时显示的问题? Oracle中字段的读取问题? 我的快照应该怎样去更新啊? 存储过程返回记录集,我怎么在java里面获得记录的遍历呢?求助,100分谢谢 新手请教--触发器问题 ORACLE升级问题 数据量少时的select into和游标 请教一条SQL语句,谢谢。 如何记录一个web系统登录后对数据库特定表进行操作的痕迹
void CNnDlg::OnButtonDeljpg()
{
// TODO: Add your control notification handler code here
CString str1;
m_jpg_view.GetText(m_jpg_view.GetCurSel(),str1); CJPGSet deljpg; m_pDB=new CDatabase;
m_pJPGQviewSet=new CJPGSet(m_pDB);
if(m_pJPGQviewSet->IsOpen())
{
m_pJPGQviewSet->Close();
}
m_pJPGQviewSet->Open();
if( !m_pJPGQviewSet->CanRestart( ) )
return; // Unable to requery
if( !m_pJPGQviewSet->Requery( ) ) //重新查询
// Requery failed, so take action
return; deljpg.Open(AFX_DB_USE_DEFAULT_TYPE,"select * from JPG_QVIEW WHERE ID_QVIEW ="+str1);
AfxMessageBox(deljpg.m_ID_QVIEW);
deljpg.Delete();
deljpg.Close();
AfxMessageBox("编号为"+str1+"的JPG记录已经删除!"); m_jpg_view.ResetContent();
OnButtonJpg();
}
运行到deljpg.Delete(); 就抛出异常了,显示的信息是:“更新或删除未涉及任何数据行‘
但是这条记录可以被AfxMessageBox()显示出来,证实记录集不是空的,不知道是什么问题。
我这种问题好像真的很难解决,曾经问过高手,说不知道怎么解决
看看统计值,包括表空间、回滚段、cache的,应该不会是这些问题。
会不会有递归,造成死循环?
在delete操作被阻塞时再去看一下锁的情况