<%@ page contentType="text/html;charset=GB2312" %>
<%@ page import="java.sql.*,java.util.*"%><%!
Connection conn;
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance();
conn=DriverManager.getConnection("jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=mydb","sa","123456");
}
%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charsetGB2312">
<title>dbconn</title>
</head>
<body>
<%Statement stmt=conn.createStatement();
String sql="select * from [USERS]";
ResultSet rs=stmt.executeQuery(sql);
while (rs.next()) {%>
  第一个字段内容为:<%=rs.getString("username")%>
  第二个字段内容为:<%=rs.getString("password")%>
  第二个字段内容为:<%=rs.getString("Intro")%><br>
<%}%>
<%out.print("数据库操作成功!");%>
<%rs.close();
  stmt.close();
  conn.close();%>
</body>
</html>
改成下面的话就出错:<%@ page contentType="text/html;charset=GB2312" %>
<%@ page import="java.sql.*,java.util.*"%>
<%! //提示出错的地方
public Connection conndb(){
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance();
Connection conn=DriverManager.getConnection("jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=mydb","sa","123456");
return conn;
}
%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charsetGB2312">
<title>dbconn</title>
</head>
<body>
<%
Connection conn;
conn=conndb();
Statement stmt=conn.createStatement();
String sql="select * from [USERS]";
ResultSet rs=stmt.executeQuery(sql);
while (rs.next()) {%>
  第一个字段内容为:<%=rs.getString("username")%>
  第二个字段内容为:<%=rs.getString("password")%>
  第二个字段内容为:<%=rs.getString("Intro")%><br>
<%}%>
<%out.print("数据库操作成功!");%>
<%rs.close();
  stmt.close();
  conn.close();%>
</body>
</html>

解决方案 »

  1.   

    上面搞错,应该这样<%@ page contentType="text/html;charset=GB2312" %> 
    <%@ page import="java.sql.*,java.util.*"%> <%
    Connection conn; 
    Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance(); 
    conn=DriverManager.getConnection("jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=mydb","sa","123456"); 
    %> 
    <html> 
    <head> 
    <meta http-equiv="Content-Type" content="text/html; charsetGB2312"> 
    <title>dbconn </title> 
    </head> 
    <body> 
    <% Statement stmt=conn.createStatement(); 
    String sql="select * from [USERS]"; 
    ResultSet rs=stmt.executeQuery(sql); 
    while (rs.next()) {%> 
      第一个字段内容为: <%=rs.getString("username")%> 
      第二个字段内容为: <%=rs.getString("password")%> 
      第二个字段内容为: <%=rs.getString("Intro")%> <br> 
    <%}%> 
    <%out.print("数据库操作成功!");%> 
    <%rs.close(); 
      stmt.close(); 
      conn.close();%> 
    </body> 
    </html> 
    改成下面的话就出错: 
    <%@ page contentType="text/html;charset=GB2312" %> 
    <%@ page import="java.sql.*,java.util.*"%> 
    <%! //提示出错的地方 
    public Connection conndb(){ 
    Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance(); 
    Connection conn=DriverManager.getConnection("jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=mydb","sa","123456"); 
    return conn; 

    %> 
    <html> 
    <head> 
    <meta http-equiv="Content-Type" content="text/html; charsetGB2312"> 
    <title>dbconn </title> 
    </head> 
    <body> 
    <% 
    Connection conn; 
    conn=conndb(); 
    Statement stmt=conn.createStatement(); 
    String sql="select * from [USERS]"; 
    ResultSet rs=stmt.executeQuery(sql); 
    while (rs.next()) {%> 
      第一个字段内容为: <%=rs.getString("username")%> 
      第二个字段内容为: <%=rs.getString("password")%> 
      第二个字段内容为: <%=rs.getString("Intro")%> <br> 
    <%}%> 
    <%out.print("数据库操作成功!");%> 
    <%rs.close(); 
      stmt.close(); 
      conn.close();%> 
    </body> 
    </html>
      

  2.   

    楼主试试,没验证过<%@ page contentType="text/html;charset=GB2312" %> 
    <%@ page import="java.sql.*,java.util.*"%> 
    <%! //提示出错的地方 
    class test{
    public static Connection conndb(){ 
    Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance(); 
    Connection conn=DriverManager.getConnection("jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=mydb","sa","123456"); 
    return conn; 

    }
    %> 
    <html> 
    <head> 
    <meta http-equiv="Content-Type" content="text/html; charsetGB2312"> 
    <title>dbconn </title> 
    </head> 
    <body> 
    <% 
    Connection conn; 
    conn=test.conndb(); 
    Statement stmt=conn.createStatement(); 
    String sql="select * from [USERS]"; 
    ResultSet rs=stmt.executeQuery(sql); 
    while (rs.next()) {%> 
      第一个字段内容为: <%=rs.getString("username")%> 
      第二个字段内容为: <%=rs.getString("password")%> 
      第二个字段内容为: <%=rs.getString("Intro")%> <br> 
    <%}%> 
    <%out.print("数据库操作成功!");%> 
    <%rs.close(); 
      stmt.close(); 
      conn.close();%> 
    </body> 
    </html>
      

  3.   

    多谢,但JB提示错误方法 conndb 不能声明为“静态”;只能在静态类型或顶级类型中才能声明静态方法
      

  4.   

    那个getconnection后面好像不能换行的把
      

  5.   

    public Connection conndb(){ 
    Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance(); 
    Connection conn=DriverManager.getConnection("jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=mydb","sa","123456"); 
    return conn; 
    } 这里面你要加个try{}catch{}进去
      

  6.   

    改成<%! 
    public static Connection conndb() throws Exception { 
        Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance(); 
        Connection conn = DriverManager.getConnection("jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=mydb", "sa", "123456"); 
        return conn; 

    %>