转载自:http://www.jb51.net/article/31876.htm

1.前提是MyEclipse已经能正常开发Java工程 
2.安装MySQL 
个人使用的是版本是 mysql-5.0.22-win32.zip 
网址:http://www.mysql.com/downloads/mysql/#downloads 
3.下载JDBC驱动 
个人使用的是 mysql-connector-java-5.1.22.zip,所需要的就是解压缩之后其中的 mysql-connector-java-5.1.22-bin.jar 
网址:http://www.mysql.com/downloads/connector/j/

4.代码测试

 package ts.jsj.lyh;

 import java.sql.*;

 /** */
/**
* 使用JDBC连接数据库MySQL的过程 DataBase:JSJ, table:student;
*
* @author DuChangfeng 2008 09 18
*/
public class JDBCTest { public static Connection getConnection() throws SQLException,
java.lang.ClassNotFoundException {
// 第一步:加载MySQL的JDBC的驱动
Class.forName("com.mysql.jdbc.Driver"); // 取得连接的url,能访问MySQL数据库的用户名,密码;jsj:数据库名
String url = "jdbc:mysql://localhost:3306/mydata";
String username = "root";
String password = ""; // 第二步:创建与MySQL数据库的连接类的实例
Connection con = DriverManager.getConnection(url, username, password);
return con;
} public static void main(String args[]) {
try {
// 第三步:获取连接类实例con,用con创建Statement对象类实例 sql_statement
Connection con = getConnection();
Statement sql_statement = con.createStatement(); /** */
/************ 对数据库进行相关操作 ************/
// 如果同名数据库存在,删除
// sql_statement.executeUpdate("drop table if exists student");
// 执行了一个sql语句生成了一个名为student的表
// sql_statement.executeUpdate("create table student (id int not null auto_increment, name varchar(20) not null default 'name', math int not null default 60, primary key (id) ); ");
// 向表中插入数据
// sql_statement.executeUpdate("insert student values(1, 'liying', 98)");
// sql_statement.executeUpdate("insert student values(2, 'jiangshan', 88)");
// sql_statement.executeUpdate("insert student values(3, 'wangjiawu', 78)");
// sql_statement.executeUpdate("insert student values(4, 'duchangfeng', 100)");
// ---以上操作不实用,但是列出来作为参考--- // 第四步:执行查询,用ResultSet类的对象,返回查询的结果
String query = "select * from student";
ResultSet result = sql_statement.executeQuery(query);
/** */
/************ 对数据库进行相关操作 ************/ System.out.println("Student表中的数据如下:");
System.out.println("------------------------");
System.out.println("学号" + " " + "姓名" + " " + "数据成绩 ");
System.out.println("------------------------"); // 对获得的查询结果进行处理,对Result类的对象进行操作
while (result.next()) {
int number = result.getInt("sno");
String name = result.getString("sname");
String mathScore = result.getString("sgrade");
// 取得数据库中的数据
System.out.println(" " + number + " " + name + " " + mathScore);
} // 关闭连接和声明
sql_statement.close();
con.close(); } catch (java.lang.ClassNotFoundException e) {
// 加载JDBC错误,所要用的驱动没有找到
System.err.print("ClassNotFoundException");
// 其他错误
System.err.println(e.getMessage());
} catch (SQLException ex) {
// 显示数据库连接错误或查询错误
System.err.println("SQLException: " + ex.getMessage());
}
} }

加上几点个人认为需要注意的地方:

1)关于mysql-connector-java-5.1.22-bin.jar 的存放位置。在MyEclipse具体的java工程中新建一存放jar 包的文件夹(如 lib),将mysql-connector-java-5.1.22-bin.jar 复制到文件夹中,选中jar包右击--->Build Path--->Add To Build Path,即可。

若出现

ClassNotFoundExceptioncom.mysql.jdbc.Driver

的提示,则正是由于缺少导入jar包所造成的。

2)如果已经对MySQL的使用很熟悉,则可忽略这条。个人在测试连接时,老是出现这样的异常提示:

SQLException: Communications link failure 
The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.

这正是由于个人对MySQL使用不熟悉,对MySQL进行了诸多尝试性的操作,不知何时无意中将MySQL的服务(如果在安装MySQL时没有更改的话,缺省服务名就是MySQL)关闭,解决方法开启此服务即可。控制面板--->管理工具--->服务--->MySQL--->选择启用。

3)在使用上面的代码测试时,需要更改的地方有: 
//MySQL数据库的用户名,密码,数据库名

 String url = "jdbc:mysql://localhost:3306/jsj";
String username = "root";
String password = "";

以及具体基本表中的所要查询的字段名:

 int number = result.getInt("sno");
String name = result.getString("sname");
String mathScore = result.getString("sgrade");

MyEclipse通过JDBC连接MySQL数据库基本介绍的更多相关文章

  1. JDBC连接MySQL数据库代码模板

    下面这个例子是最简单的JDBC连接MySQL数据库的例子. 一般步骤: 1.注册驱动: 2.建立连接: 3.创建语句: 4.处理结果: 5.释放资源. 注意: 1.软件开发环境:MyEclipse 8 ...

  2. Crystal Reports 2008(水晶报表) JDBC连接mysql数据库

    在本blog中,主要介绍的是Crystal Reports 2008使用JDBC连接mysql数据库. 在连接之间,首先要确认你电脑上面都安装了mysql数据库. 其次,就是jdbc连接数据时候所使用 ...

  3. JDBC连接MySQL数据库及演示样例

    JDBC是Sun公司制定的一个能够用Java语言连接数据库的技术. 一.JDBC基础知识         JDBC(Java Data Base Connectivity,java数据库连接)是一种用 ...

  4. JDBC连接MySQL数据库及示例

      JDBC是Sun公司制定的一个可以用Java语言连接数据库的技术. 一.JDBC基础知识         JDBC(Java Data Base Connectivity,java数据库连接)是一 ...

  5. JDBC——使用JDBC连接MySQL数据库

    在JDBC--什么是JDBC一文中我们已经介绍了JDBC的基本原理. 这篇文章我们聊聊如何使用JDBC连接MySQL数据库. 一.基本操作 首先我们需要一个数据库和一张表: CREATE DATABA ...

  6. java jdbc 连接mysql数据库 实现增删改查

    好久没有写博文了,写个简单的东西热热身,分享给大家. jdbc相信大家都不陌生,只要是个搞java的,最初接触j2ee的时候都是要学习这么个东西的,谁叫程序得和数据库打交道呢!而jdbc就是和数据库打 ...

  7. java用JDBC连接MySQL数据库的详细知识点

    想实现java用JDBC连接MySQL数据库.需要有几个准备工作: 1.下载Connector/J的库文件,下载Connector/J的官网地址:http://www.mysql.com/downlo ...

  8. JDBC 连接mysql数据库

    JDBC 连接mysql数据库jar包:mysql-connector-java-5.1.47.jar 下载:mysql-connector-java-5.1.47.jar jdbc:java dat ...

  9. 分页查询信息(使用jdbc连接mysql数据库实现分页查询任务)

             分页查询信息       使用jdbc连接mysql数据库实现分页查询任务 通过mysql数据库提供的分页机制,实现商品信息的分页查询功能,将查询到的信息显示到jsp页面上. 本项目 ...

随机推荐

  1. c++在函数后面加const

    非静态成员函数后面加const(加到非成员函数或静态成员后面会产生编译错误),表示成员函数隐含传入的this指针为const指针,决定了在该成员函数中,任意修改它所在的类的成员的操作都是不允许的(因为 ...

  2. Qt creator 搭配 valgrind 检测内存泄漏

    继上次重载operator new检测内存泄漏失败之后,妥协了.决定不管是否是准确指明哪一行代码出现内存泄漏,只要告诉我是否有泄漏就行了,这样就没有new替换的问题.在开发中,总是一个个小功能的开发. ...

  3. python高级编程之超类02:super的缺陷

    # -*- coding: utf-8 -*- # python:2.x __author__ = 'Administrator' #当使用多重继承层次结构时,再使用super的时候是非常危险的,主要 ...

  4. GCD 延时操作

    dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(delayInSeconds * NSEC_PER_SEC)), dispatch_ ...

  5. Redis + Jedis + Spring (list操作)

    为了简便操作,我使用了StringRedisTemplate.用字符串操作做展示.当然,你可以继续使用RedisTemplate. 闲言少叙,上代码,一目了然: /** * Mar 5, 2013 * ...

  6. qemu-kvm-1.1.0源代码中关于迁移的代码分析

    这篇文档基于qemu-kvm-1.1.0源代码进行分析. 首先,源代码中的hmp-commands.hx文件里有下面内容: { .name = "migrate",/* 在moni ...

  7. Linq GroupJoin 使用

    备忘: var data = BoshccEntities.Current.TB_MB_1 .GroupJoin(BoshccEntities.Current.TB_MB_2, o => o.H ...

  8. jQuery validate 的valid()方法一直返回true

    1 调用$('#myForm').valid(),一直返回ture eg:html <form id="myForm"> <input class="f ...

  9. javascript切换效果

    html <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta ...

  10. 在android源码环境下写上层应用的一个初步解决方法

    在android源码环境下编写上层应用,一直以来我都觉得很麻烦.因为如果单纯将应用导入eclipse,那么framework层一些定制的API无法自动提示和补全,使用起来不太方便:如果将整个andro ...