HarmonyOS relationalStore 自动更新字段当前时间?

relationalStore 自动更新字段当前时间,创建 table 时,使用 SQL 语句

CREATE TABLE t (ts TIMESTAMP DEFAULT CURRENT\_TIMESTAMP ON UPDATE CURRENT\_TIMESTAMP)

插入数据会报错

请问如何让 ts 字段在记录更新时自动更新为 CURRENT\_TIMESTAMP

阅读 706
1 个回答

创建一个 TRIGGER去更新时间

建表语句:

CREATE TABLE IF NOT EXISTS shopCardTable(id INTEGER PRIMARY KEY AUTOINCREMENT,description TEXT,showtime TIMESTAMP DEFAULT CURRENT_TIMESTAMP)

TRIGGER语句

let sql = 'CREATE TRIGGER IF NOT EXISTS test AFTER UPDATE OF id,description\n' +
  'ON shopCardTable\n' +
  'FOR EACH ROW BEGIN UPDATE shopCardTable \n' +
  'SET showtime = CURRENT_TIMESTAMP WHERE rowid = NEW.rowid;\n' +
  'END;'
this.rdbStore.executeSql(sql)