为什么在eclipse中执行 sql server 的查询语句总是提示语法错误,请大家帮我看看。
publicvoidactionPerformed(ActionEventevt){try{Stringnamevalue=name.getText().trim();S...
public void actionPerformed(ActionEvent evt){
try{
String namevalue=name.getText().trim();
String sexvalue=sex.getText().trim();
String agevalue=age.getText().trim();
String majorvalue=major.getText().trim();
String sname,ssex,sage,smajor;
sname="LIKE'%"+namevalue+"%'";
ssex="LIKE'"+sexvalue+"%'";
if(agevalue.equals(""))
sage="BETWEEN 15 AND 35";
else
sage="="+agevalue;
smajor="LIKE'"+majorvalue+"%'";
command="SELECT * FROM student WHERE name"+sname+"AND sex"+ssex+"AND age"+sage+"AND major"+smajor;
rs=stmt.executeQuery(command);
resultarea.setText("");
if(!rs.next())
resultarea.setText("找不到符合此条件的记录");
else {
do{
String rename=rs.getString("name");
String resex=rs.getString("sex");
String reage=rs.getString("age");
String remajor=rs.getString("major");
resultarea.append(rename);
resultarea.append(resex+" ");
resultarea.append(reage+" ");
resultarea.append(remajor+"\n");
}while (rs.next());
}
}catch (Exception ex){
resultarea.append(ex.getMessage()+"\n");
}
}这是主要的查询语句,我的程序是一个学生信息查询系统,输入学生的姓名,学号等信息来在sql server中查找配对的信息,然后输出。
出现的问题截图 展开
try{
String namevalue=name.getText().trim();
String sexvalue=sex.getText().trim();
String agevalue=age.getText().trim();
String majorvalue=major.getText().trim();
String sname,ssex,sage,smajor;
sname="LIKE'%"+namevalue+"%'";
ssex="LIKE'"+sexvalue+"%'";
if(agevalue.equals(""))
sage="BETWEEN 15 AND 35";
else
sage="="+agevalue;
smajor="LIKE'"+majorvalue+"%'";
command="SELECT * FROM student WHERE name"+sname+"AND sex"+ssex+"AND age"+sage+"AND major"+smajor;
rs=stmt.executeQuery(command);
resultarea.setText("");
if(!rs.next())
resultarea.setText("找不到符合此条件的记录");
else {
do{
String rename=rs.getString("name");
String resex=rs.getString("sex");
String reage=rs.getString("age");
String remajor=rs.getString("major");
resultarea.append(rename);
resultarea.append(resex+" ");
resultarea.append(reage+" ");
resultarea.append(remajor+"\n");
}while (rs.next());
}
}catch (Exception ex){
resultarea.append(ex.getMessage()+"\n");
}
}这是主要的查询语句,我的程序是一个学生信息查询系统,输入学生的姓名,学号等信息来在sql server中查找配对的信息,然后输出。
出现的问题截图 展开
4个回答
展开全部
command="SELECT * FROM student WHERE name"+sname+"AND sex"+ssex+"AND age"+sage+"AND major"+smajor;
这里的sql明显写错了啊。。你在每个字段后面都差了个=,应该是这样,如果字段是字符串类型,还要加上单引号,总之就是要和SQLServer里面写的一样
SELECT * FROM student WHERE name="+sname+"AND sex="+ssex+"AND age="+sage+"AND major="+smajor
这里的sql明显写错了啊。。你在每个字段后面都差了个=,应该是这样,如果字段是字符串类型,还要加上单引号,总之就是要和SQLServer里面写的一样
SELECT * FROM student WHERE name="+sname+"AND sex="+ssex+"AND age="+sage+"AND major="+smajor
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这个是改后的类
class Operate {
private static int jishu1 = 0;
private static int jishu2 = 0;
private String a;
public Operate(String a) {
this.a = a;
for (int i = 0; i < a.length(); i++) {
if (a.charAt(i) == 'n') {
jishu1++;
}
if (a.charAt(i) == 'o') {
jishu2++;
}
}
}
public int getJiShu1() {
return jishu1;
}
public int getJiShu2() {
return jishu2;
}
}
你的错误在于private char b[]=a.toCharArray();这句。在数组b里面存放的知识a的地址而已。
相当于对于数组b根本还没有定义。所以报错
class Operate {
private static int jishu1 = 0;
private static int jishu2 = 0;
private String a;
public Operate(String a) {
this.a = a;
for (int i = 0; i < a.length(); i++) {
if (a.charAt(i) == 'n') {
jishu1++;
}
if (a.charAt(i) == 'o') {
jishu2++;
}
}
}
public int getJiShu1() {
return jishu1;
}
public int getJiShu2() {
return jishu2;
}
}
你的错误在于private char b[]=a.toCharArray();这句。在数组b里面存放的知识a的地址而已。
相当于对于数组b根本还没有定义。所以报错
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
像这类问题 最好打印出最后你拼出的sql语句
放在数据库上执行 看错在哪里
放在数据库上执行 看错在哪里
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询