在Oracle SQL Developer中,最常用的功能应该是SQL Worksheet,或Worksheet。
可以创建两类Worksheet,即Worksheet和Unshared Worksheets。前者是共享数据库连接的,后者会单独创建自己的连接。前者的快捷键是Alt+F10;后者的快捷键是Ctrl+Shift+N。
在首选项中,也可以改变默认的行为:
在上图中,我们使用菜单Window>Assign File Accelerator
为3个窗口创建了标签:1,2,3。1和2是共享的连接,3是非共享的连接。对于以下的SQL:
SELECT * FROM v$session WHERE status = 'ACTIVE' and username = user
and program = 'SQL Developer';
select
sys_context('USERENV','SID')
from dual;
select * from V$SESSION_CONNECT_INFO where sid = sys_context('USERENV','SID');
1和2的session ID是相同的,而3有不同的session ID。
对于共享连接的Worksheet,如果其中某一Worksheet中执行commit,则所有共享此连接的Worksheet中的事务都会提交。
假设要使用多个回话来模拟锁阻塞的行为,则应用Unshared Worksheet,而非默认的Worksheet。