("SELECT * FROM user WHERE name='"+temp1+"'and password='"+temp2+"'");
把这个SQL语句打出来,看看在SQL2000里能执行吗?
就知道那错了,
应该是语法错误

解决方案 »

  1.   

    ResultSet rs=stmt.executeQuery("SELECT * FROM user WHERE name='"+temp1+"' and password='"+temp2+"'");
    注意and前面有个空格
    你自己可以把sql语句打印出来看看
      

  2.   

    除了上述原因以外,因为你用的是JDBC_ODBC连接方式,所以要设定ODBC数据源,更要注意的是在数据源中指定默认的数据库(!!!)。
    在实际开发中最好采用直连的方式
    Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance(); 
    String url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=pubs"; 
    下载SQLServer直连的驱动程序。
      

  3.   

    to :QJava(仅次于郎) 
    请问能说具体点吗?
      

  4.   

    to :windyloft(侠客行)
    在SQL SERVER中进行语法检查时出现:
    [Microsoft][ODBC SQL Server Driver][SQL Server]不能比较成排序text ntext 和image数据类型,除非使用IS NULL或LIKE运算符。
      

  5.   

    to ;windyloft:请问怎么回事情,代码如下:
    SELECT * FROM [user] WHERE name='xxx' and password='xxx'
    我的password的输入框是密码形式,但在数据库中是“text”形式,有没有问题?