我需要来自unix的数据库表的记录数。
我从unix调用一个sql脚本,需要记录计数到任何日志文件。
答案 0 :(得分:1)
您可以将以下内容放入test.sql
文件中:
SET HEADING OFF;
SELECT COUNT(*) FROM dual;
QUIT;
并通过脚本通过SQL*Plus进行调用。
将输出:
1
因为表dual
只有一行。您应该能够将其写入日志文件。
答案 1 :(得分:1)
你不能通过像这样重新编写脚本来将输出从脚本附加到命名文件中。
$ sqlplus username/password@SID @your_script.sql >> /tmp/whatever.log
如果您希望输出中有多个光头数,则需要在投影仪中包含样板:
SQL> select to_char(sysdate, 'YYYYMMDDHH24MISS')||'::Number of emps = '
2 , count(*)
3 from emp
4 group by to_char(sysdate, 'YYYYMMDDHH24MISS')||'::Number of emps = '
5 /
TO_CHAR(SYSDATE,'YYYYMMDDHH24MISS COUNT(*)
--------------------------------- ----------
20100210133747::Number of emps = 16
SQL>