与在Linux系统上快速创建大文件一样,我想在Windows系统上快速创建一个大文件.从大到大我认为5 GB.内容无关紧要.内置命令或短批处理文件会更好,但如果没有其他简单方法,我会接受一个应用程序.
我有一个基本的查询:
SELECT dtCreated
, bActive
, dtLastPaymentAttempt
, dtLastUpdated
, dtLastVisit
FROM Customers
WHERE (bActive = 'true')
AND (dtLastUpdated > CONVERT(DATETIME, '2012-01-0100:00:00', 102))
Run Code Online (Sandbox Code Playgroud)
我想在输出中添加另一列...让我们称之为"差异"以找出'dtcreated'和'dtlastupdated'之间的天数所以例如如果记录1的dtcreated为1/1/11并且dtlastupdated是1/1/12,"差异"列将是"365".
这可以在查询中完成吗?
也许这是正常的,但在我的Oracle 11g数据库中,我看到使用Oracle SQL Developer的程序员经常消耗超过100MB的组合UGA和PGA内存.我想知道这是否正常以及可以做些什么.我们的数据库是32位版本的Windows 2008,因此内存限制正日益受到关注.我使用以下查询来显示内存使用情况:
SELECT e.SID, e.username, e.status, b.PGA_MEMORY
FROM v$session e
LEFT JOIN
(select y.SID, y.value pga,
TO_CHAR(ROUND(y.value/1024/1024),99999999) || ' MB' PGA_MEMORY
from v$sesstat y, v$statname z
where y.STATISTIC# = z.STATISTIC# and NAME = 'session pga memory') b
ON e.sid=b.sid
WHERE (PGA)/1024/1024 > 20
ORDER BY 4 DESC;
Run Code Online (Sandbox Code Playgroud)
似乎在SQLDeveloper中打开表的任何时候资源使用率都会上升,但即使关闭它,内存也不会消失.如果表在打开时进行排序,问题就更糟了,因为它似乎使用了更多的内存.我理解它在排序时会如何使用内存,甚至可能在它仍处于打开状态时使用内存,但是在内存关闭后使用内存似乎对我不利.谁能证实这一点?
更新:由于不了解UGA是在专用服务器模式下存储在PGA中,我发现我的号码已关闭.这使得数字低于它们,但问题仍然是SQL Developer似乎使用过多的PGA.