Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/214.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/81.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
android sql insert表示对象到日期(';30/03/2012';,';DD/MM/YYYY';)_Android_Sql_Date_Ormlite - Fatal编程技术网

android sql insert表示对象到日期(';30/03/2012';,';DD/MM/YYYY';)

android sql insert表示对象到日期(';30/03/2012';,';DD/MM/YYYY';),android,sql,date,ormlite,Android,Sql,Date,Ormlite,我试着去执行 在城市中插入值(2,'Qandahar','AFG','Qandahar',237500,截止日期('2012年3月30日','DD/MM/YYYY') 为此我有课 package com.airliquid.android.backend.donnee.domainobject; import java.sql.Date; import com.j256.ormlite.field.DatabaseField; import com.j256.ormlite.table.D

我试着去执行 在城市中插入值(2,'Qandahar','AFG','Qandahar',237500,截止日期('2012年3月30日','DD/MM/YYYY')

为此我有课

package com.airliquid.android.backend.donnee.domainobject;

import java.sql.Date;

 import com.j256.ormlite.field.DatabaseField;
import com.j256.ormlite.table.DatabaseTable;
 @DatabaseTable(tableName = "City")
 public class UserDo {
 @DatabaseField(generatedId=true,unique=true)
 private Long id;
 @DatabaseField(columnName="Name")
 private String Name;
 @DatabaseField(columnName="CountryCode")
 private String CountryCode;
 @DatabaseField(columnName="District")
 private String District;
 @DatabaseField(columnName="Population")
 private Long Population;

 @DatabaseField(columnName="date")
 private Date date;

}

当我执行时不带to_date('30/03/2012','DD/MM/YYYY')它的工作,android中的什么对象是to_date('30/03/2012','DD/MM/YYYY')?

首先SQL Lite期望的格式是'YYYY-MM-DD'

如果要将日期转换为SQL能够理解的字符串,请使用以下代码行:

SimpleDataFormat sdf=新SimpleDataFormat(“yyyy-MM-dd”)

字符串日期=sdf.format(YourDate)


YourDate是一个日期变量,包含要存储的值(在您的示例中为2012年3月30日)。使用构造函数日期(int year,int month,int day)。

我有一个包含所有插入内容的文件,我有一个用于插入所有这些行的文件dao.updateRaw(strLin);strLin=插入城市的值(2,'Qandahar','AFG','Qandahar',237500,截止日期('2014年9月16日','DD/MM/YYYY');这一行插入内容已在文件中定义,如何解决此问题?您所说的“已在文件中定义”是什么意思?您应该能够修改正在编程的代码行,对吗?如果没有,请告诉代码的所有者对其进行修改。请注意SQL和SQLite之间的差异。@TAMTOM1987-如果导入文件中的值的格式与数据库不兼容,则不能一步完成此操作。首先,您应该预解析导入文件并将值转换为正确的格式。或者,标准做法是将文件导入到暂存表中,然后将该表的内容传播到持久化表中。在本例中,可以将日期作为varchar字段插入,然后在将其传播到持久化表时应用字符串操作、类型转换等,将其转换为真实的日期数据类型。