Android 需要帮助创建SQLite触发器以保持运行总计吗
这是我第一次尝试创建触发器,我很困惑。以下是包含相关列的基本数据库模式:Android 需要帮助创建SQLite触发器以保持运行总计吗,android,sqlite,triggers,Android,Sqlite,Triggers,这是我第一次尝试创建触发器,我很困惑。以下是包含相关列的基本数据库模式: DATABASE_NAME TABLE_100 | C100_ROWID | C101_NAME | ... | C105_COUNT | TABLE_200 | C200_ROWID | C201_NAME | ... | C207_FOREIGNKEY (C101_NAME) | 首先创建表_100,然后根据用户输入填充表_200的行,因此首次启动应用程
DATABASE_NAME
TABLE_100
| C100_ROWID | C101_NAME | ... | C105_COUNT |
TABLE_200
| C200_ROWID | C201_NAME | ... | C207_FOREIGNKEY (C101_NAME) |
首先创建表_100,然后根据用户输入填充表_200的行,因此首次启动应用程序时表_200为空
我试图做的是在表200上有INSERT时创建一个触发器,将+1添加到用作C207\u外键的特定C101\u名称行的C105\u计数中
目的是保持表200中使用C101_ROWID/C100_NAME的所有时间的运行总数
以下是我迄今为止得到的信息,显然是完全错误的,因此任何帮助都将不胜感激:
CREATE TRIGGER runningcount AFTER INSERT ON TABLE_200
BEGIN
UPDATE TABLE_100
SET C105_COUNT = C105_COUNT + 1
WHERE (??? newly inserted row on TABLE_200 ???) C207_FOREIGNKEY = C101_NAME
END
编辑:
在经历了大约两个小时的挫折后,我终于明白了这一点。如果将来有人需要:
CREATE TRIGGER trigger AFTER INSERT ON TABLE_200
BEGIN
UPDATE TABLE_100
SET C105_COUNT = C105_COUNT + 1
WHERE C101_NAME = new.C207_FOREIGNKEY
END
CREATE TRIGGER trigger AFTER INSERT ON TABLE_200
BEGIN
UPDATE TABLE_100
SET C105_COUNT = C105_COUNT + 1
WHERE C101_NAME = new.C207_FOREIGNKEY
END
在经历了大约两个小时的挫折后,我终于明白了这一点。如果将来有人需要:
CREATE TRIGGER trigger AFTER INSERT ON TABLE_200
BEGIN
UPDATE TABLE_100
SET C105_COUNT = C105_COUNT + 1
WHERE C101_NAME = new.C207_FOREIGNKEY
END
CREATE TRIGGER trigger AFTER INSERT ON TABLE_200
BEGIN
UPDATE TABLE_100
SET C105_COUNT = C105_COUNT + 1
WHERE C101_NAME = new.C207_FOREIGNKEY
END
请不要把答案写在问题里,而要写在答案里。