用JAVA连接SQL实现更新数据

在代码中更新数据

<%@ page language="java" contentType="text/html; charset=UTF-8" import="java.sql.*"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>修改记录页面</title>
</head>
<body>
<% 		String driverName = "com.microsoft.sqlserver.jdbc.SQLServerDriver";
//加载JDBC驱动
		String dbURL = "jdbc:sqlserver://localhost:1433; DatabaseName=zero";
//连接服务器和数据库
		String userName = "sa"; // 默认用户名
		String userPwd = "123456"; // 密码
		Connection dbConn = null;
		try {
			Class.forName(driverName);
			dbConn = DriverManager.getConnection(dbURL, userName, userPwd);
		} catch (Exception e) {
			e.printStackTrace();
		}
		request.setCharacterEncoding("UTF-8");//设置字符编码,避免出现乱码
		String sql="update stu_info set weight=? where name=?";//sql语句
		PreparedStatement pstmt=dbConn.prepareStatement(sql);//创建接口对象
		pstmt.setFloat(1, 60);
		pstmt.setString(2, "嘻嘻");
		int n=pstmt.executeUpdate();//这里面不需要参数
		
		if(n==1){%> 数据修改成功!<br> <%}
		else{%> 数据修改失败!<br> <%}
		if(pstmt!=null) {pstmt.close();}
		if(dbConn!=null) {dbConn.close();}
	%>
</body>
</html>

在网页中,根据自己提交的条件更新数据

提交代码

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>修改记录的条件提交页面</title>
</head>
<body>
请选择修改记录所满足的条件<hr width="100%" size="3"><!-- width设置线的长度 -->
<form action="update_stu_2_edit.jsp" method="post"><br><!-- 必需的 action 属性规定当提交表单时,向何处发送表单数据。 -->
	姓名:<input type="text" name="name"><br><br>
	性别:男<input type="radio" value="男" name="sex">
		   女<input type="radio" value="女" name="sex"><br><br>
		   <input type="submit" value="提交">
		   &nbsp;&nbsp;&nbsp;&nbsp;
		   <input type="reset" value="取消">
		   </form>
</body>
</html>

编辑代码

<%@ page language="java" contentType="text/html; charset=UTF-8" import="java.sql.*"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>修改编辑页面</title>
</head>
<body>
<% 		String driverName = "com.microsoft.sqlserver.jdbc.SQLServerDriver";
//加载JDBC驱动
		String dbURL = "jdbc:sqlserver://localhost:1433; DatabaseName=zero";
//连接服务器和数据库
		String userName = "sa"; // 默认用户名
		String userPwd = "123456"; // 密码
		Connection dbConn = null;
		try {
			Class.forName(driverName);
			dbConn = DriverManager.getConnection(dbURL, userName, userPwd);
		} catch (Exception e) {
			e.printStackTrace();
		}
		request.setCharacterEncoding("UTF-8");//设置字符编码,避免出现乱码
		String sex=request.getParameter("sex");
		String name=request.getParameter("name");
		session.setAttribute("sex",sex);
		session.setAttribute("name",name);
		String sql="select * from stu_info where sex=? and name=?";//sql语句
		PreparedStatement pstmt=dbConn.prepareStatement(sql);//创建接口对象
		pstmt.setString(1,sex);
		pstmt.setString(2,name);
		ResultSet rs=pstmt.executeQuery();//这里面不需要参数
		if(rs.next()){
			int id=rs.getInt("id");
			String name2=rs.getString("name");
			String sex2=rs.getString("sex");
			int age=rs.getInt("age");
			float weight=rs.getFloat("weight");
			float hight=rs.getFloat("hight");
			
			if(rs!=null){rs.close();}
			if(pstmt!=null) {pstmt.close();}
			if(dbConn!=null) {dbConn.close();}
%>
		<form action="update_stu_2.jsp" method="post">	
		<!-- method 属性规定如何发送表单数据(表单数据发送到 action 属性所规定的页面)。

		表单数据可以作为 URL 变量(method="get")或者 HTTP post (method="post")的方式来发送。 -->
		<table border="0" width="238" height="252">
		<tr><td>学号</td><td><input name="id" value=<%=id%>></td></tr>
		<tr><td>姓名</td><td><input name="name2" value=<%=name2%>></td></tr>
		<tr><td>性别</td><td><input name="sex2" value=<%=sex2%>></td></tr>
		<tr><td>年龄</td><td><input name="age" value=<%=age%>></td></tr>
		<tr><td>体重</td><td><input name="weight" value=<%=weight%>></td></tr>
		<tr><td>身高</td><td><input name="hight" value=<%=hight%>></td></tr>
		<tr align="center">
		<td colspan="2">
			<input type="submit" value="提交">&nbsp;&nbsp;&nbsp;&nbsp;
		   <input type="reset" value="取消">
		   </td>
		   </tr>
		</table>
		</form>
		<%}
		else{%>
		没有找到合适条件的记录!!<% 
		if(rs!=null){rs.close();}
		if(pstmt!=null) {pstmt.close();}
		if(dbConn!=null) {dbConn.close();}
	 }%>
</body>

接收代码

<%@ page language="java" contentType="text/html; charset=UTF-8" import="java.sql.*"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>修改后重写记录页面</title>
</head>
<body>
<% 		String driverName = "com.microsoft.sqlserver.jdbc.SQLServerDriver";
//加载JDBC驱动
		String dbURL = "jdbc:sqlserver://localhost:1433; DatabaseName=zero";
//连接服务器和数据库
		String userName = "sa"; // 默认用户名
		String userPwd = "123456"; // 密码
		Connection dbConn = null;
		try {
			Class.forName(driverName);
			dbConn = DriverManager.getConnection(dbURL, userName, userPwd);
		} catch (Exception e) {
			e.printStackTrace();
		}
		request.setCharacterEncoding("UTF-8");//设置字符编码,避免出现乱码
		String sql="update stu_info set id=?,name=?,sex=?,age=?,weight=?,hight=? where name=? and sex=?";//sql语句
		PreparedStatement pstmt=dbConn.prepareStatement(sql);//创建接口对象
		int id=Integer.parseInt(request.getParameter("id"));
		String name2=request.getParameter("name");
		String sex2=request.getParameter("sex2");
		int age=Integer.parseInt(request.getParameter("age"));
		float weight=Float.parseFloat(request.getParameter("weight"));
		float hight=Float.parseFloat(request.getParameter("hight"));
		String name=(String)session.getAttribute("name");
		String sex=(String)session.getAttribute("sex");
		pstmt.setInt(1,id);    //传递参数
		pstmt.setString(2,name2);
		pstmt.setString(3,sex2);
		pstmt.setInt(4,age);
		pstmt.setFloat(5,weight);
		pstmt.setFloat(6,hight);
		pstmt.setString(7,name);
		pstmt.setString(8,sex);
		int n=pstmt.executeUpdate();//这里面不需要参数
		
		if(n>=1){%> 重写数据成功!<br> <%}
		else{%> 重写数据失败!<%=n %><br> <%}
		if(pstmt!=null) {pstmt.close();}
		if(dbConn!=null) {dbConn.close();}
	%>
</body>
</html>

猜你喜欢

转载自blog.csdn.net/weixin_42059543/article/details/83662630