我的系统是SUSE 10
RESIN 3.0.12
MySQL 5.2.3-falcon-alpha / Client API version  4.1.13
JAVA 1.4.2.12
mysql-connector-java-3.2.0-alpha-bin.jar [在resin/lib目录下]
--------------------------JSP程序如下:
<%@ page contentType="text/html;charset=gb2312" language="java" import="java.io.*,java.sql.*,java.util.Date"%><%@ page import="java.util.Date"%>
<%@ page import="java.text.DateFormat"%>
<%@ page import="java.text.SimpleDateFormat"%>
<%@ page import="java.util.Calendar"%>
<%@ page import="java.util.GregorianCalendar"%><%@ page import="java.util.*,javax.servlet.*" %>
<%@ page import ="java.io.OutputStreamWriter"%>
<%@ page import ="java.text.DecimalFormat,java.text.Format.*"%>
<%@ page import ="java.text.NumberFormat,java.io.PrintStream"%>
<%
 String MySQL_IP="172.18.16.111";
 String MySQL_ID="mrt";
 String MySQL_PW="20001231"; Connection conn = null;
 String  url="",QueryStr="";
 Statement stmt = null;
 ResultSet rs = null;
 try{
  Class.forName("com.mysql.jdbc.Driver").newInstance();
  url ="jdbc:mysql://"+MySQL_IP+"/basic?user="+MySQL_ID+"&password="+MySQL_PW+"&useUnicode=true&characterEncoding=gb2312";
  conn = DriverManager.getConnection(url);
  stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
 }catch (Exception e){
   e.printStackTrace();
   out.println(e);
 }
 if(stmt != null) stmt.close();
 if(conn != null) conn.close();
%>
--------------------------------------------------出现如下问题:
java.sql.SQLException: Cannot proceed because the tables used by events were found damaged at server start 
请高手指教!

解决方案 »

  1.   

    Connection conn;
     /**
      * 连接到数据库
      * 首先你必须拼一个数据库连接的Url
      * 格式如:jdbc:mysql://<[IP]>:<[PORT]>/<[DBNAME]>?user=<[DBUSER]>&password=<[DBPASSWORD]>
     */
     
     String DB_Addr = "localhost";
     String DB_Name = "myfile";
     String DB_User = "root";
     String DB_Password = "";
     String DB_CharSet = "GB2312";
     String DB_Conn_String = "jdbc:mysql://"+DB_Addr+"/"+DB_Name+"?user="+DB_User+"&password="+DB_Password+"&useUnicode=true&characterEncoding="+DB_CharSet;
     
     try
     {
     /**
      * String ClassForName = "com.mysql.jdbc.Driver";
      * Class.forName(ClassForName).newInstance();
      * 实际上这种方法更好
      */
     DriverManager.registerDriver(new com.mysql.jdbc.Driver());
         conn=DriverManager.getConnection(DB_Conn_String);
         return conn;
     }
     catch(Exception e)
     {
         e.printStackTrace();
         return null;
     }
      

  2.   

    如用mm.mysql-2.0.14-bin.jar
    ---------------其他不变,以下改变后
    Class.forName("org.gjt.mm.mysql.Driver").newInstance();
    url ="jdbc:mysql://"+MySQL_IP+":3306/basic?user="+MySQL_ID+"&password="+MySQL_PW+"&useUnicode=true&characterEncoding=gb2312";
    conn = DriverManager.getConnection(url);
    stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
    -----------------------------------------问题如下:
    java.sql.SQLException: Communication failure during handshake. Is there a server running on 172.18.156.111:3306? 
    (访问MySQL3一点问题都没有)
    请高手指教呀?
      

  3.   

    caminero() :
        用你的程序在我的系统中还是出现如下信息:java.sql.SQLException: Cannot proceed because the tables used by events were found damaged at server start