关于java数据库的一个问题

mymdeep 2013-05-31 03:58:01
public static List<String> selectJSDatabase(String timeold)
{
createorOpenDatabase();

List<String> alist=new ArrayList<String>();
try
{
String sql="select * from jsRecord where time= "+ timeold ;
Cursor cur=sld.rawQuery(sql, new String[]{});

while(cur.moveToNext())
{


alist.add(cur.getString(1));
alist.add(cur.getString(2));
}
cur.close();
}
catch(Exception e)
{
e.printStackTrace();
}

closeDatabase();
return alist;

}
这是我写的一个函数
其中String sql="select * from jsRecord where time= "+ timeold ;这句话中timeold是个变量,这种写法是不是不对,为什么直接跳到catch了
...全文
59 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
shujia_zaibeijing 2013-06-05
  • 打赏
  • 举报
回复
因为你的条件是一个变量,所以要进行拼接字符串, String sql="select * from jsRecord where time= ' "+ timeold +" ' " ; 这样进行拼接。希望对你有帮助
mymdeep 2013-05-31
  • 打赏
  • 举报
回复
引用 3 楼 flagiris 的回复:
[quote=引用 2 楼 mymdeep 的回复:] [quote=引用 1 楼 flagiris 的回复:] 感觉这句话没有错啊, e.printStackTrace(); 打印出来的错误信息呢。。
现在我知道了应该是这样的 String sql= " update jsRecord set time='"+ timenum+"' " + " where time='"+ timeold+"' " ; 但是如果我想改两个属性怎么办 String sql= " update jsRecord set time='"+ timenum+"' "+" set data='"+ datanum+"' " + " where time='"+ timeold+"' " ; time和data都不是主键,这样改可以吗[/quote] String sql= " update jsRecord set time='"+ timenum+"' "+", data='"+ datanum+"' " + " where time='"+ timeold+"' " ;[/quote] 这样只加一个,不对。是不是加and啊
菖蒲老先生 2013-05-31
  • 打赏
  • 举报
回复
引用 2 楼 mymdeep 的回复:
[quote=引用 1 楼 flagiris 的回复:] 感觉这句话没有错啊, e.printStackTrace(); 打印出来的错误信息呢。。
现在我知道了应该是这样的 String sql= " update jsRecord set time='"+ timenum+"' " + " where time='"+ timeold+"' " ; 但是如果我想改两个属性怎么办 String sql= " update jsRecord set time='"+ timenum+"' "+" set data='"+ datanum+"' " + " where time='"+ timeold+"' " ; time和data都不是主键,这样改可以吗[/quote] String sql= " update jsRecord set time='"+ timenum+"' "+", data='"+ datanum+"' " + " where time='"+ timeold+"' " ;
mymdeep 2013-05-31
  • 打赏
  • 举报
回复
引用 1 楼 flagiris 的回复:
感觉这句话没有错啊, e.printStackTrace(); 打印出来的错误信息呢。。
现在我知道了应该是这样的 String sql= " update jsRecord set time='"+ timenum+"' " + " where time='"+ timeold+"' " ; 但是如果我想改两个属性怎么办 String sql= " update jsRecord set time='"+ timenum+"' "+" set data='"+ datanum+"' " + " where time='"+ timeold+"' " ; time和data都不是主键,这样改可以吗
菖蒲老先生 2013-05-31
  • 打赏
  • 举报
回复
感觉这句话没有错啊, e.printStackTrace(); 打印出来的错误信息呢。。

50,545

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧