在我的select查询中,我使用string.format作为where子句。 当我有格式的strfTime我得到错误。sqlite查询中的字符串格式
select = String.format(Locale.US, "SELECT %d AS %s, CAST(strftime('%s', START) AS integer) AS %s",
SORT_ID, SORT_ORDER_ID, SORT_ORDER_DATE);
//选择= “SELECT” + SORT_ID + “AS SORT_ORDER_ID,CAST(的strftime( '%s' 的,START)AS整数)AS SORT_ORDER_DATE”;
没有string.format的注释行有效。但是,当我添加的String.Format我得到MissingFormatArgumentException:格式说明 '%s' 的
您确定要一个datestring转换为整数?????以及为什么要转换列名称?他们都是字符串。顺便说一下,您将第一列重命名为另一个名称......为什么?我觉得你对数据库不太熟悉...... –
你有1'%d'和3'%s'这需要4个参数。尽管你只有3. – Enzokie
我不重命名第一列,它实际上是一个常量整数,并将其添加到游标结果中,以便以后用于排序。同样是转换日期的原因。 @rotwang – png