web-dev-qa-db-ja.com

Netezzaテーブルの最後にアクセスされたタイムスタンプ?

操作(選択、挿入、または更新)のためにNetezzaテーブルが最後にアクセスされたときの詳細を示すクエリを知っている人はいますか?

ありがとう

1
user70022

詳細なアクセスログとして機能する 履歴データベースnzhistcreatedbを使用)を設定し、それが提供する ビューとテーブル を調べます(例:$v_hist_table_access_stats)。

まだこれを設定していない場合、/nz/kit/log/postgres/のログをトロールしない限り、誰がテーブルにアクセスしたかを知る方法がわかりません。

1
Carl

それはそのようになります...

SELECT FORMAT_TABLE_ACCESS(usage),
   hq.submittime
FROM "$v_hist_queries" hq
   INNER JOIN "$hist_table_access_3" hta
USING (NPSID, NPSINSTANCEID, OPID, SESSIONID)
WHERE hq.dbname    = 'URBN_TARGET'
AND hta.tablename  = 'CUSTOMER_ORDER_RANK'
AND hq.SUBMITTIME  > '01-01-2015'
AND hq.SUBMITTIME <= CURRENT_DATE
AND
   (
      instr(FORMAT_TABLE_ACCESS(usage),'ins') > 0
   OR instr(FORMAT_TABLE_ACCESS(usage),'upd') > 0
   OR instr(FORMAT_TABLE_ACCESS(usage),'del') > 0
   OR instr(FORMAT_TABLE_ACCESS(usage),'read') > 0
   )
AND status=0;
0
Ram Barot