当前页面: 开发资料首页 → J2SE 专题 → 怪事了,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
怪事了,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
摘要: 怪事了,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
resultset= conn.executeQuery("select username,password from user_table where username='"
+ username+"'");
out.println("select username,password from user_table where username='"+ username+"'");
while (resultset.next()) {
}
我发现在user_table表中如果personal个人资料字段为空的话,字段类型为text的话就出错,,
其它字段为varchar类型,为空时就不出错,怪事了,请高手帮忙解释一下。。。。。
MSSQL数据库,
不知道怎么回事,,,,
----------------------------------------------------------------------
Stacktrace:
org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:504)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:393)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
root cause
java.lang.NullPointerException
org.apache.jsp.load_jsp._jspService(load_jsp.java:98)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:332)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
----------------------------------------------
http://community.csdn.net/Expert/TopicView.asp?id=4853672
个人资料字段是name or password,哪个为空啊?
<%@ page language="java" import="java.util.*,java.sql.*" pageEncoding="UTF-8"%>
HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<head>
</head>
<body>
<%ResultSet login_resultset=null;
login_resultset= conn.executeQuery("select username from test where id=1");
login_resultset.last();
out.println("
"+String.valueOf(login_resultset.getRow()));
while (login_resultset.next()) {
//if ((MD5(password)).equals((String) resultset.getObject(2))) {
//session.setAttribute("username", username);
//response.sendRedirect("left.jsp");
// else {
//response.sendRedirect("left.jsp");
}
//} else {
//response.sendRedirect("left.jsp");
//}
%>
</body>
----------------------------------
test三个字段
id 自增 整型
username char
text text
mssql数据库,,,
---------------------------------
我刚才刚测出来,,发现只要text中的数据为""就出错,而text中的内容为null或有数据时就不出错,,怎么回事》
我们用java来解决实际问题。java技术交流,讨论java的技术细节和最新技术。欢迎中高级程序员加入讨论。QQ群:3001581
顶。
把你的驱动换了,微软的驱动很 LJ。换了之后就没有问题了。
驱动问题?oh,晕
不同类型的字段,对于空值NULL的处理不同。有的会直接转为“”。
如果是“”就不会出错,如果是NULL自然就会出错。
也就是说,TEXT类型的空值会保留为NULL。
不光是TEXT会读出null,各种类型都可能读出来null。
你说varchar没有这个问题,倒真的奇怪了