問題タブ [audit-tables]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
969 参照

hibernate - Envers: *_AUD テーブル (REVINFO テーブルではない) に新しい列を追加する方法

監査対象のエンティティごとに、envers は *_AUD サフィックスを持つテーブルを作成します。

各テーブルには2 つの追加の列 ( REVrevtype )があります。

余分なニーズを満たすために、新しい列を動的に作成したいだけです。

Obs: すべてのエンティティの新しいフィールドが自分に合わないため、新しい列を手動で作成します。

それは可能ですか?

0 投票する
0 に答える
390 参照

oracle - Oracle トリガー - カウントの使用方法

トリガーはかなり新しいので、特定のトリガーを作成する方法について頭を悩ませようとしています。

私は医師に患者との練習をさせなければならず、患者が4つ以上の予約をした場合、トリガーはカウントする必要があります。患者の詳細はauditテーブルに保存されます

すべてのテーブルを起動して実行しています。このトリガーを作成する方法に行き詰まっています。pat_no が予定テーブルに入った回数をカウントするトリガーを作成できるかどうか疑問に思っています。

これは私がこれまでに持っているものであり、それほど多くはないので、助けていただければ幸いです

同じ pat_no の量をカウントする when 句が予定テーブルに入力されていると推測しています

0 投票する
1 に答える
431 参照

sql-server - SQL Server - 特定のトランザクションを後でのみロールバックする

私は SQL Server 2014、標準版を持っています。データを削除し、別の主キーの下に再挿入するテーブルがいくつかあります (実際には同じであるシステム内の 2 人のレコードをマージするため)。これらすべての変更は、T-SQL トランザクションで実行されます。

トランザクションとロールバックがどのように機能するかは理解していますが、必要なのは監査/ロールバックです。これは、ユーザーが後でこのトランザクションのみをロールバックする必要がある場合があるためです (データベースまたはテーブル全体を復元する必要はありません)。私は標準版しか持っていないので、「Change Data Capture」はオプションではありません。

私の本当の問題は、この監査情報をどのように保存するかということです。これが1つの作業単位であることを追跡するために一意のキーが必要になると思います。そのため、これらのテーブルの変更はすべて、ユーザーに関する限り同じグループに関連付けられます。しかし、たとえば DELETE WHERE ID = @ID クエリがある場合、必要に応じて後で再挿入できるように、削除する前にこれらの削除済みレコードをすべて保存するにはどうすればよいでしょうか? ある種の大規模なロールバック T-SQL スクリプトを保存しても問題ありませんが、削除しようとしているデータに対して保存して後で実行できる INSERT スクリプトを生成する方法がわかりません。

私はどんなアイデアにもオープンです。必要なのは、複数のテーブルを処理するのに十分な汎用性のあるアーキテクチャと、削除と挿入をロールバックする機能だけです。きれいな監査テーブルを維持するよりも、ロールバック機能に関心があります。

0 投票する
5 に答える
33752 参照

java - @CreatedDate アノテーションが mysql で機能しない

私は春が初めてで、 @CreatedDate アノテーションがエンティティでどのように機能するか混乱しています。

私はグーグル検索を行い、多くの解決策がありましたが、1つを除いてどれもうまくいきませんでした. 私はなぜ混乱していますか?

最初に試したのがこれ

それは動かなかった。created列の値が NULL になりました。

それから私はこれをしました。

これにより、実際にタイムスタンプがデータベースに保存されました。new Date()私の質問は、私が従ったチュートリアルのほとんどは、現在のタイムスタンプを取得する必要がないことを示唆しています。私はそれが必要なようです。不足しているものはありますか?

0 投票する
1 に答える
44 参照

android - 監査テーブルがアプリケーションによって使用される RAM に影響しないことを確認してください

状況をできるだけ単純化しようとしたので、あまりリアルに見えません。申し訳ありません。しかし、それは本当の懸念に基づいています。

ユーザーに現在の温度を表示する小さな Android アプリケーションがあるとします。温度は毎秒変化しており、アプリケーションは常に動作しています。

また、アプリには「監査」DB テーブルがあります。

このアプリケーションを 1 年使用すると、監査テーブルは非常に大きくなります。そして、本当に必要でない限り、切り捨てたくないと想像してみましょう。

sqlite が Android でどのように動作するかを知っている人への質問: 心配する必要はありますか?

  1. 使用しない場合、sqlite はこの大きなテーブルを RAM にロードしようとしますか? たとえば、別のテーブルから選択する場合。
  2. 「温度> 0のTemperatureAuditからカウントを選択」しようとすると、sqliteはこの大きなテーブルを次々にロードしますか? それとも、テーブル全体を RAM に一度にロードしますか?
  3. sqlite がメモリ割り当てをあまりケチっていない場合、どうすればよいですか? このテーブルを別のデータベースに移動すると、最初の問題は解決しますか? テーブルのパーティショニングは 2 番目に役立ちますか?