如何使用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);
存储是否正确?
答案 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)');