我是SQL Plus的新手。我试图在批处理文件中使用SQL Plus更新记录。可以这样做吗?
当我尝试这个时,它只是等待并等待......我不知道为什么。
这是我的test.sql文件:
CONNECT scott/tiger@server
SPOOL ./ResetTable.status
SET LINESIZE 100
SET PAGESIZE 50
UPDATE MY_DBO.ControlTable SET TriggerFlag = 1;
COMMIT;
SPOOL OFF
EXIT;
这是我的test.bat文件
sqlplus /nolog @"C:\test.sql"
exit
然而,这有效......
这是我的test.sql文件:
CONNECT scott/tiger@server
SPOOL ./ResetTable.status
SET LINESIZE 100
SET PAGESIZE 50
select * from MY_DBO.ControlTable ;
SPOOL OFF
EXIT;
这是我的test.bat文件
sqlplus /nolog @"C:\test.sql"
exit
答案 0 :(得分:3)
我会下注其他会话已锁定MY_DBO.ControlTable
中TriggerFlag
为1的一行或多行。
在其他会话中,您可以查询DBA_BLOCKERS
和DBA_WAITERS
吗?如果您在这些表中看到行,可以发布结果吗?