public void actionPerformed(ActionEvent e) {
//处理查询按钮事件
if(e.getSource()==jbQuery){ //查询按钮
String jtfValue=jtfQuery.getText().trim();

//假如查询的时候输入的是空字符串,则查询所有
if(jtfValue.equals("")){
//String sql="SELECT * FROM TBL_METRO_SJT_BLACKCARD_DTL where 1=?";
String sql="select * from tbl_sic_card_account where 1=?";
String[] params=new String[]{"1"};
model=new StuModel();
model.queryStudent(sql, params);
jtInfo.setModel(model);
}else{
//假如查询的时候输入名字
//String sql="SELECT * FROM TBL_METRO_SJT_BLACKCARD_DTL where CARDID=?";
String sql="select * from tbl_sic_card_account where iss_csc=?"; String[] params=new String[]{jtfValue};
model=new StuModel();
model.queryStudent(sql, params);
jtInfo.setModel(model);
}说明:数据库是oracle。 tbl_sic_card_account这张表中,有iss_csc字段和iss_clr_name,里面存放的时是卡号都是数字。iss_clr_name中存放的是人名,都是中文。 jbQuery是文本框。我在文本框里输入卡号查询,可以查到记录。语句就是用红色的部分。  我改成输入人名查询就查不到了。不知道为什么,大概名字在数据库中是字符串的关系?语句应该怎么写呢sql=select * from tbl_sic_card_account where   后面应该怎么写?。
我是新手,试了很多次都失败了,希望高手指教,怎么拼接

解决方案 »

  1.   

    好像发错区了,应该发在javase区
      

  2.   

    iss_csc字段和iss_clr_name
    你的意思是在前台就一个jbQuery文本框,当输入卡号时可以正常查询,输入姓名时就不可以?应该在前台用两个文本框,
    在输入姓名的时候where  iss_clr_name='输入的内容'
    在输入卡号的时候where  iss_csc=输入的内容或者两者组合起来where iss_clr_name='输入的内容' and iss_csc=输入的内容
      

  3.   

    对,是有2个文本框,一个是输姓名,一个输卡号的,输姓名的字符串应该怎么写?
    输姓名String sql="select * from tbl_sic_card_account where iss_clr_name";