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

时间:2012-08-25 13:19:54

标签: javascript cordova sqlite

如何使用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);

存储是否正确?

3 个答案:

答案 0 :(得分: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);
顺便说一下。没有必要使用自动增量。如果您尝试在主键整数中插入空值,则该字段将自动转换为比该列的最大值大1的整数。

答案 1 :(得分: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。

答案 2 :(得分:0)

尝试:

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