数据库内容未能显示解决办法
数据库内容未能显示提交表单后,希望出现数据库中的char类型的一列:objectname,但提交后总是不能显示数据库
数据库内容未能显示 提交表单后,希望出现数据库中的char类型的一列:objectname, 但提交后总是不能显示数据库内容,怎么回事?(页面没问题,可以显示别的内容) 显示代码如下: String name =request.getParameter("name"); String sql="select * from compcacu where objectname ="+name; ResultSet rs=stmt.executeQuery(sql); while(rs.next()){ out.println(rs.getRow()); out.print("用户ID:"); out.print(rs.getString(1); out.print(rs.getString(2);....[解决办法] [解决办法] String sql="select * from compcacu where objectname ='"+name+"'"; [解决办法]
探讨 String sql="select * from compcacu where objectname ='"+name+"'"; [解决办法] 字符串类型 需要单引号
数字类型 不用单引号
[解决办法] String name =request.getParameter("name");
问题1确认name 是否收倒,System.out.println(name);
问题2 name 是否转码?如果是在javabean里面,name如果是中文是需要转码的,
name = new String(name.getBytes("ISO8859-1","GBK")); 根据页面的<%@ page language="java" contentType="text/html; charset=gbk" pageEncoding="GBK" %>
String sql="select * from compcacu where objectname ="+name; //改为 String sql="select * from compcacu where objectname = '"+name+"';
问题2,bojectname = admin; 自己在数据库这样写 是存在错误的,应该加上'' bojectname='admin';
ResultSet rs=stmt.executeQuery(sql);
while(rs.next()){
out.println(rs.getRow());
out.print("用户ID:");
out.print(rs.getString(1);
out.print(rs.getString(2);....