0

如何使用 PhoneGap 在 Sqlite 中存储当前日期和时间?

tx.executeSql("CREATE TABLE IF NOT EXISTS myorder(orderid INTEGER PRIMARY KEY AUTOINCREMENT,cdatetime VARCHAR)");

tx.executeSql('INSERT INTO myorder(orderid,cdatetime) VALUES(NULL,"01/01/2012 01:00:00")',[],successOrderfunction,errorfunction);

储存方式是否正确?

4

3 回答 3

3

您可以保存当前日期时间。使用 long-datatype 定义您的表列并插入您的值,如下所示:

tx.executeSql("CREATE TABLE IF NOT EXISTS myorder(orderid INTEGER PRIMARY KEY, cdatetime  long)");

tx.executeSql("INSERT INTO myorder(cdatetime) VALUES("+myDate.getTime()+")",[],successOrderfunction,errorfunction);

顺便一提。无需使用自动增量。如果您尝试在主键整数中插入空值,则该字段会自动转换为比该列的最大值大一的整数。

于 2012-08-25T16:02:17.993 回答
1

我不使用 sqlite 或 phonegap 但你不能在你的 pk 表中添加 null。添加一个数字或根本不添加任何内容。

tx.executeSql('INSERT INTO myorder(cdatetime) VALUES("01/01/2012 01:00:00")',[],successOrderfunction,errorfunction);

这应该有效,您创建了一个增量 pk。

tx.executeSql('INSERT INTO myorder(orderid,cdatetime) VALUES(1, "01/01/2012 01:00:00")',[],successOrderfunction,errorfunction);

这也应该有效,我认为在 sqlite 中您可以手动添加 pk 。

于 2012-08-25T13:45:38.667 回答
0

尝试:

tx.executeSql('CREATE TABLE IF NOT EXISTS expens (Etype TEXT,amount REAL,created_at DATETIME DEFAULT CURRENT_TIMESTAMP)');

于 2014-04-30T12:03:52.243 回答