<%@ page contentType="text/html; charset=gb2312" language="java" import="java.sql.*" errorPage="" %>
<html>
<head>
<title>插入数据</title>
</head>
<body bgcolor=pink>
<font size=1>
<%
String number=request.getParameter("number");
if(number==null)
{number="";
}
byte b[]=number.getBytes("ISO-8859-1");
number=new String(b);
String name=request.getParameter("name");
if(name==null)
{name="";
}
byte c[]=name.getBytes("ISO-8859-1");
name=new String(c);
String m=request.getParameter("math");
if(m==null)
{m="-100";}
String e=request.getParameter("english");
if(e==null)
{e="-100";}
String p=request.getParameter("physics");
if(p==null)
{p="-100";}
Connection con=null;
java.sql.Statement sql=null;
ResultSet rs=null;
try{Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");}
catch(ClassNotFoundException event){out.print(event);}
try {con=DriverManager.getConnection("jdbc:odbc:sun","sa","");
sql=con.createStatement();
String condition="insert into student values"+"("+"'"+number+", '"+name+","+m+","+e+","+p+")";
sql.executeUpdate(condition);
%>
<p>更新后的表的记录:
<%
rs=sql.executeQuery("select * from student ");
out.print("<Table border>");
out.print("<TR>");
out.print("<TH width=100>"+"学号");
out.print("<TH width=100>"+"姓名");
out.print("<TH width=100>"+"数学成绩");
out.print("<TH width=100>"+"英语成绩");
out.print("<TH width=100>"+"物理成绩");
out.print("</TR>");
while(rs.next())
{
out.print("<tr>");
String n=rs.getString(1);
out.print("<td>"+n+"</td>");
String xing=rs.getString(2);
out.print("<td>"+xing+"</td>");
int math=rs.getInt("数学成绩");
out.print("<td>"+math+"<td>");
int english=rs.getInt("英语成绩");
out.print("<td>"+english+"<td>");
int physics=rs.getInt("物理成绩");
out.print("<td>"+physics+"<td>");
out.print("</tr>");
}
out.print("</table>");
con.close();
}
catch(SQLException event){out.print(e);}
%>
</font>
</body>
</html>
帮我看看,怎么改正,谢谢
----------------解决方案--------------------------------------------------------
<%@ page contentType="text/html; charset=gb2312" language="java" import="java.sql.*" errorPage="" %>
<html>
<head>
<title>插入数据</title>
</head>
<body bgcolor=pink>
<font size=1>
<%
String number=request.getParameter("number");
if(number==null)
{number="";
}
byte b[]=number.getBytes("ISO-8859-1");
number=new String(b);
String name=request.getParameter("name");
if(name==null)
{name="";
}
byte c[]=name.getBytes("ISO-8859-1");
name=new String(c);
String m=request.getParameter("math");
if(m==null)
{m="-100";}
String e=request.getParameter("english");
if(e==null)
{e="-100";}
String p=request.getParameter("physics");
if(p==null)
{p="-100";}
Connection con=null;
java.sql.Statement sql=null;
ResultSet rs=null;
try{Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");}
catch(ClassNotFoundException event){out.print(event);}
try {con=DriverManager.getConnection("jdbc:odbc:sun","sa","");
sql=con.createStatement();
String condition=("insert into student values"+"("+"'"+number+"', '"+name+",'"+m+","+e+","+p+")");
sql.executeUpdate(condition);
%>
<p>更新后的表的记录:
<%
rs=sql.executeQuery("select * from student ");
out.print("<Table border>");
out.print("<TR>");
out.print("<TH width=100>"+"学号");
out.print("<TH width=100>"+"姓名");
out.print("<TH width=100>"+"数学成绩");
out.print("<TH width=100>"+"英语成绩");
out.print("<TH width=100>"+"物理成绩");
out.print("</TR>");
while(rs.next())
{
out.print("<tr>");
String n=rs.getString(1);
out.print("<td>"+n+"</td>");
String xing=rs.getString(2);
out.print("<td>"+xing+"</td>");
int math=rs.getInt("数学成绩");
out.print("<td>"+math+"<td>");
int english=rs.getInt("英语成绩");
out.print("<td>"+english+"<td>");
int physics=rs.getInt("物理成绩");
out.print("<td>"+physics+"<td>");
out.print("</tr>");
}
out.print("</table>");
con.close();
}
catch(SQLException e){out.print(e);}
%>
</font>
</body>
</html>
改为这样的话,就提示catch(SQLException e){out.print(e);}
已在此方法中定义了e
----------------解决方案--------------------------------------------------------
是不是你的数据库存在问题,有数据吗
----------------解决方案--------------------------------------------------------
有啊,就是添加数据有错误,查询和删除都可以
----------------解决方案--------------------------------------------------------
字段数目是否正确,类型?
----------------解决方案--------------------------------------------------------
int math=rs.getInt("数学成绩");
out.print("<td>"+math+"<td>");
int english=rs.getInt("英语成绩");
out.print("<td>"+english+"<td>");
int physics=rs.getInt("物理成绩");
out.print("<td>"+physics+"<td>");
把你的HTML格式如数正确
----------------解决方案--------------------------------------------------------
String condition=("insert into student values"+"("+"'"+number+"', '"+name+",'"+m+","+e+","+p+")");
你这条插入语句为什么 要用括号都括起来呢?
要是说只获得了一个 文本框里面的内容 是不是都写在一个<form></from>里面了 你获得以后为什么不用out.println检测一下呢 应该能看出是哪有问题
看了看你代码也没啥问题 最好不数据库的查询和连接语句什么的封装到bean里面
----------------解决方案--------------------------------------------------------