如题,我的程序连接的是网络MySQL数据库,数据库不在本地,摘我的电脑上运行该代码一切正常,但是换到别的电脑上就无法正常连接数据库,请问如何在别的电脑上配置MySQL驱动来达到连接数据库的目的呢?
Java代码:
import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextField;
public class search extends JFrame implements ActionListener{ JLabel log=new JLabel("二级查询");
JTextField log_t=new JTextField();
JLabel id=new JLabel("身份证号:");
JTextField id_t=new JTextField();
JLabel name=new JLabel("姓名:");
JTextField name_t=new JTextField();
JLabel result=new JLabel("结果:");
JTextField result_t=new JTextField();
JLabel bishi=new JLabel("笔试:");
JTextField bishi_t=new JTextField();
JLabel jishi=new JLabel("机试:");
JTextField jishi_t=new JTextField();
JButton bt1=new JButton("查询");
JPanel pe=new JPanel();

search()
{
super("二级考试查询系统");
setSize(350,230);
setLocationRelativeTo(null);
setVisible(true);
setResizable(false);
add(pe);
pe.setLayout(null);
pe.add(log);
log.setBounds(120, 10, 100, 34);
log.setFont(new Font("行楷",Font.BOLD,20));
pe.add(id);
id.setBounds(10, 50, 80, 24);
pe.add(id_t);
id_t.setBounds(80, 50, 180, 24);
pe.add(bt1);
bt1.setBounds(270, 49,70, 24);
bt1.setFocusPainted(false);
pe.add(name);
pe.add(name_t);
name.setBounds(10, 105, 40, 24);
name_t.setBounds(55, 105, 90, 24);
name_t.setEditable(false);
pe.add(result);
pe.add(result_t);
result.setBounds(160, 105, 40, 24);
result_t.setBounds(200, 105,90, 24);
result_t.setEditable(false);
pe.add(bishi);
pe.add(bishi_t);
bishi.setBounds(10, 160, 40, 24);
bishi_t.setBounds(55, 160, 90, 24);
bishi_t.setEditable(false);
pe.add(jishi);
pe.add(jishi_t);
jishi.setBounds(160, 160, 40, 24);
jishi_t.setBounds(200, 160, 90, 24);
jishi_t.setEditable(false);

bt1.addActionListener(this);
}

public static void main(String[] args) {
// TODO Auto-generated method stub search smp=new search();
smp.setVisible(true);
smp.addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent e){System.exit(0);}});
} @Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub

if(e.getSource()==bt1)
{
String name,result,bishi,jishi;
try
{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
}
catch(ClassNotFoundException e1){
e1.printStackTrace();
}
try
{
Connection con = DriverManager.getConnection("jdbc:mysql://208.81.166.169:3306/hythzxsql","hythzxSQL","727799796");
//Connection con = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/二级查询","root","hythzx");
Statement stmt = con.createStatement();
String sql = "SELECT name,result,bishi,jishi  FROM result where id='"+id_t.getText()+"'";
ResultSet rs = stmt.executeQuery(sql);
while (rs.next())
{

name=rs.getString("name");
result=rs.getString("result");
    bishi=rs.getString("bishi");
    jishi=rs.getString("jishi");
    name_t.setText(name);
    result_t.setText(result);
    bishi_t.setText(bishi);
    jishi_t.setText(jishi);
}

rs.close(); 
stmt.close(); 
con.close(); 
}
catch(Exception e1){
System.out.println("连接失败!");
e1.printStackTrace();
}
}
}}

解决方案 »

  1.   

     导入相应的Driver.jar就行了。驱动jar
      

  2.   

    你在别的电脑上是如何运行的?
    你是打个jar包过去运行的?那你打jar包的时候没有将驱动打进去。建议你安装eclipse的Fat Jar插件,如何用这个来打包
    就不需要你管了
    --signature-------------------
    http://www.mowker.com/view/
      

  3.   

    1,确保驱动没有问题
    mysql驱动应该放在访问端,而不是数据库端。
    2,确认你们的网络是通的!
    3,确保用户权限有没有问题
    hythzxSQL
    你用root用户试试(确认root有远程访问的权限)