jsp数据库查询
我在做jsp的数据查询操作。我的数据库中的表my_talbe中有nian_fen(年份)这个字段,现在我希望在一个页面(假设为input.jsp)中填入开始年份(xxxx...
我在做jsp的数据查询操作。我的数据库中的表my_talbe中有nian_fen(年份)这个字段,现在我希望在一个页面(假设为input.jsp)中填入开始年份(xxxx)和结束年份(yyyy),然后提交表单(打开action的页面,假设为search.jsp),然后系统显示出从xxxx年到yyyy年的记录。
我在search.jsp中首先要获得表单中开始年份和结束年份的值,如:
String kai_shi_nian_fen = new String(request.getParameter("kai_shi_nian_fen").getBytes("ISO8859_1"),"GBK");
String jie_shu_nian_fen = new String(request.getParameter("jie_shu_nian_fen").getBytes("ISO8859_1"),"GBK");
然后,我写的下面这句sql有错:
sql = "select * from my_table where nian_fen>kai_shi_nian_fen and nian_fen<jie_shu_nian_fen";
但是,如果将两个变量kai_shi_nian_fen和jie_shu_nian_fen改为确定的值则没有问题。错误的原因好像就是因为这两个变量有误。
请问,这句sql语句该怎么写???? 展开
我在search.jsp中首先要获得表单中开始年份和结束年份的值,如:
String kai_shi_nian_fen = new String(request.getParameter("kai_shi_nian_fen").getBytes("ISO8859_1"),"GBK");
String jie_shu_nian_fen = new String(request.getParameter("jie_shu_nian_fen").getBytes("ISO8859_1"),"GBK");
然后,我写的下面这句sql有错:
sql = "select * from my_table where nian_fen>kai_shi_nian_fen and nian_fen<jie_shu_nian_fen";
但是,如果将两个变量kai_shi_nian_fen和jie_shu_nian_fen改为确定的值则没有问题。错误的原因好像就是因为这两个变量有误。
请问,这句sql语句该怎么写???? 展开
4个回答
展开全部
首先你要先确定数据库的字段类型Date还是char(varchar..),如果是字符就像你那样比较就可以了,如果是Date类型你应该进行转换然后再进行比较
转换成Date可以在JAVA中实现或数据库中:
JAVA中可以将String转换为timestamp\java.sql.Date或 SimpleDateFormat然后再进行比较
在数据库中可以用:在2001到2008之间
nian_fen >=to_date('20010000000000','yyyymmddhh24miss') and nian_fen <=to_date('20080000000000','yyyymmddhh24miss')
转换成Date可以在JAVA中实现或数据库中:
JAVA中可以将String转换为timestamp\java.sql.Date或 SimpleDateFormat然后再进行比较
在数据库中可以用:在2001到2008之间
nian_fen >=to_date('20010000000000','yyyymmddhh24miss') and nian_fen <=to_date('20080000000000','yyyymmddhh24miss')
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
sql = "select * from my_table where nian_fen>'"+kai_shi_nian_fen +"'and nian_fen<'"+jie_shu_nian_fen"'";
由于kai_shi_nian_fen是字符串,所以要用””引起来
又由于”kai_shi_nian_fen”在””里,所以要用’’把
”kai_shi_nian_fen”引起来,
由于kai_shi_nian_fen是字符串,所以要用””引起来
又由于”kai_shi_nian_fen”在””里,所以要用’’把
”kai_shi_nian_fen”引起来,
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
sql = "select * from my_table where nian_fen>"+kai_shi_nian_fen +"and nian_fen<"+jie_shu_nian_fen;
一楼正解
一楼正解
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询