0

私がインストールした iPhone アプリケーションは、SQLite データベースを使用して、基本的な INSERTS および DELETES が実行されたエントリをログに記録します。

ただし、このテーブルに対して行われた INSERTS のログを永続的に保持したいので、INSERT が発生したときに、ログを作成するために別のテーブルにも書き込まれるようにします。

作成した SQL ステートメントを変更するためにアプリケーションのソース コードにアクセスすることはできませんが、SQLite データベースにはアクセスできます。

トリガーでこれを行うことはできますか? もしそうなら、誰かが短い例を提供できます。

4

2 に答える 2

3

SQLite を使用したことはありませんが、Google からの最初のリンクは次のとおりです: http://www.sqlite.org/lang_createtrigger.html

おそらく次のように書くことができます:

CREATE TRIGGER duplicate_insert INSERT ON myTable
    BEGIN
        INSERT INTO myDuplicateTable
        VALUES(new.Id, new.Name, new.LastModified)
    END;

HTH

于 2011-06-27T06:22:41.387 に答える
1

Google と検索用語「sqlite トリガー」(つまり、 SQLite クエリ言語: CREATE TRIGGER )でアクセスした SQLite リファレンスのどの部分を理解するのが難しいですか?

CREATE TRIGGER ins_maintable AFTER INSERT ON MainTable
    FOR EACH ROW BEGIN INSERT INTO LoggingTable VALUES(NEW.Column1, ...); END;

テストされていないコード...構文図を信じるなら、両方のセミコロンが必要です。または、少なくとも END の前のものが必要です。

于 2011-06-27T06:21:57.357 に答える