jsp+mysql添加查询代码,并把查询结果返回当前页面,可以按学号,姓名或成绩查询

2025-04-08 04:34:26
推荐回答(1个)
回答1:

题目是mysql,
但是代码中是sqlserver数据库:

Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
Connection con=DriverManager.getConnection("jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=student", "ting", "111");

这个代码抛什么错误么????

[补充回答]

就按照下面的修改你的代码,下面的都是我手写的,可能哪儿会拼错,到时候你在调试下小错误,思路就是如此: 页面加一个form,加一个查询的输入,并提交给自身页面.













<%
//获取提交的查询条件
String keytype = request.getParameter("keytype");
String keyname = request.getParameter("keyname");

//拼接查询条件
String sqlc="";
if ("".equals(keyname) || keyname==null)
sqlc="";
else{
if ("1".equals(keytype))
sqlc=" and num='"+keyname+"'";
else if ("2".equals(keytype))
sqlc=" and name='"+keyname+"'";
else if ("3".equals(keytype))
sqlc=" and score="+keyname;
}

//out.println(sqlc); //这里可以打出来sqlc看看是否正确

try{
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
Connection con=DriverManager.getConnection("jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=student", "ting", "111");
Statement st=con.createStatement();
ResultSet rs=st.executeQuery("select * from score where 1=1 "+sqlc); //这里跟上条件
String num,name;
float score;

if (rs!=null)
{
while (rs.next()){
num=rs.getString("num");
name=rs.getString("name");
score=rs.getFloat("score");

%>

......

学生成绩管理




查询条件






学号
姓名
成绩
修改
删除