Chinaunix首页 | 论坛 | 博客
  • 博客访问: 521791
  • 博文数量: 56
  • 博客积分: 1136
  • 博客等级: 少尉
  • 技术积分: 1378
  • 用 户 组: 普通用户
  • 注册时间: 2011-12-28 14:02
文章存档

2014年(1)

2013年(7)

2012年(45)

2011年(3)

分类: Java

2013-07-16 17:06:48

JDBC连接MySql数据库,示例代码如下:


点击(此处)折叠或打开

  1. package JDBC_Test;

  2. import java.sql.Connection;
  3. import java.sql.DriverManager;
  4. import java.sql.ResultSet;
  5. import java.sql.SQLException;
  6. import java.sql.Statement;

  7. public class JDBC_Test {
  8.     // 创建静态全局变量

  9.     static Connection conn;

  10.     static Statement st;

  11.     public static void main(String[] args) {
  12.         insert();    //插入添加记录

  13.         update();    //更新记录数据

  14.         delete();    //删除记录

  15.         query();    //查询记录并显示

  16.     }
  17.     
  18.     /* 插入数据记录,并输出插入的数据记录数*/
  19.     public static void insert() {
  20.         
  21.         conn = getConnection();    // 首先要获取连接,即连接到数据库


  22.         try {
  23.             String sql = "INSERT INTO tb_user(username, password,sex,question, answer, email)"
  24.                     + " VALUES ('Tom1','adc','女', 'china','Personnel','dajkdk')";    // 插入数据的sql语句

  25.             
  26.             st = (Statement) conn.createStatement();    // 创建用于执行静态sql语句的Statement对象

  27.             
  28.             int count = st.executeUpdate(sql);    // 执行插入操作的sql语句,并返回插入数据的个数

  29.             
  30.             System.out.println("向tb_user表中插入 " + count + " 条数据");    //输出插入操作的处理结果

  31.             
  32.             conn.close();    //关闭数据库连接

  33.             
  34.         } catch (SQLException e) {
  35.             System.out.println("插入数据失败" + e.getMessage());
  36.         }
  37.     }
  38.     
  39.     /* 更新符合要求的记录,并返回更新的记录数目*/
  40.     public static void update() {
  41.         
  42.         conn = getConnection();    //同样先要获取连接,即连接到数据库

  43.         try {
  44.                 String sql = "update tb_user set answer='2200' where username = 'Tom1'";// 更新数据的sql语句

  45.                 st = (Statement) conn.createStatement();    //创建用于执行静态sql语句的Statement对象,st属局部变量

  46.                 int count = st.executeUpdate(sql);// 执行更新操作的sql语句,返回更新数据的个数

  47.                 System.out.println("tb_user表中更新 " + count + " 条数据");        //输出更新操作的处理结果

  48.             
  49.                 conn.close();    //关闭数据库连接

  50.             
  51.         } catch (SQLException e) {
  52.                 System.out.println("更新数据失败");
  53.         }
  54.     }

  55.     /* 查询数据库,输出符合要求的记录的情况*/
  56.     public static void query() {
  57.         
  58.         conn = getConnection();    //同样先要获取连接,即连接到数据库

  59.         try {
  60.                 String sql = "select * from tb_user";        // 查询数据的sql语句

  61.                 st = (Statement) conn.createStatement();    //创建用于执行静态sql语句的Statement对象,st属局部变量

  62.             
  63.                 ResultSet rs = st.executeQuery(sql);    //执行sql查询语句,返回查询数据的结果集

  64.                 System.out.println("最后的查询结果为:");
  65.                 while (rs.next()) // 判断是否还有下一个数据

  66.                 {    
  67.                     // 根据字段名获取相应的值

  68.                     String name = rs.getString("username");
  69.                     String sex = rs.getString("sex");
  70.                     String question = rs.getString("question");
  71.                     String answer = rs.getString("answer");
  72.                     String email = rs.getString("email");
  73.     
  74.                     //输出查到的记录的各个字段的值

  75.                     System.out.println(name + " " + sex + " " + question
  76.                             + " " + answer + " " + email );
  77.                 }
  78.                 
  79.                 conn.close();    //关闭数据库连接

  80.             
  81.         } catch (SQLException e) {
  82.                 System.out.println("查询数据失败");
  83.         }
  84.     }

  85.     /* 删除符合要求的记录,输出情况*/
  86.     public static void delete() {

  87.         conn = getConnection();    //同样先要获取连接,即连接到数据库

  88.         try {
  89.                 String sql = "delete from tb_user where username = 'dd'";// 删除数据的sql语句

  90.                 st = (Statement) conn.createStatement();    //创建用于执行静态sql语句的Statement对象,st属局部变量

  91.             
  92.                 int count = st.executeUpdate(sql);// 执行sql删除语句,返回删除数据的数量

  93.             
  94.                 System.out.println("tb_user表中删除 " + count + " 条数据\n");    //输出删除操作的处理结果

  95.             
  96.                 conn.close();    //关闭数据库连接

  97.             
  98.         } catch (SQLException e) {
  99.                 System.out.println("删除数据失败");
  100.         }
  101.         
  102.     }
  103.     
  104.     /* 获取数据库连接的函数*/
  105.     public static Connection getConnection() {
  106.         
  107.         Connection con = null;    //创建用于连接数据库的Connection对象

  108.         try {
  109.                 Class.forName("com.mysql.jdbc.Driver");// 加载Mysql数据驱动

  110.             
  111.                 con = DriverManager.getConnection(
  112.                     "jdbc:mysql://localhost:3306/db_database04", "root", "880830");// 创建数据连接

  113.             
  114.         } catch (Exception e) {
  115.                 System.out.println("数据库连接失败" + e.getMessage());
  116.         }
  117.         
  118.         return con;    //返回所建立的数据库连接

  119.     }
  120. }
程序运行之前,数据库查询结果如下:

程序运行结果如下:


程序运行之后,数据库查询结果如下:



JDBC连接器下载地址如下:



SQL语句如下:

点击(此处)折叠或打开

  1. -- MySQL Administrator dump 1.4
  2. --
  3. -- ------------------------------------------------------
  4. -- Server version    5.0.82-community-nt


  5. /*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
  6. /*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
  7. /*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
  8. /*!40101 SET NAMES utf8 */;

  9. /*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
  10. /*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
  11. /*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;


  12. --
  13. -- Create schema db_database04
  14. --

  15. CREATE DATABASE IF NOT EXISTS db_database04;
  16. USE db_database04;

  17. --
  18. -- Definition of table `tb_user`
  19. --

  20. DROP TABLE IF EXISTS `tb_user`;
  21. CREATE TABLE `tb_user` (
  22.   `id` int(10) unsigned NOT NULL auto_increment COMMENT '主键',
  23.   `username` varchar(45) NOT NULL COMMENT '用户名',
  24.   `password` varchar(45) NOT NULL COMMENT '密码',
  25.   `sex` varchar(45) NOT NULL COMMENT '性别',
  26.   `question` varchar(45) NOT NULL COMMENT '密码问题',
  27.   `answer` varchar(45) NOT NULL COMMENT '密码答案',
  28.   `email` varchar(45) NOT NULL COMMENT '邮箱',
  29.   PRIMARY KEY (`id`)
  30. ) ENGINE=InnoDB DEFAULT CHARSET=gbk;

  31. --
  32. -- Dumping data for table `tb_user`
  33. --

  34. /*!40000 ALTER TABLE `tb_user` DISABLE KEYS */;
  35. /*!40000 ALTER TABLE `tb_user` ENABLE KEYS */;




  36. /*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
  37. /*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
  38. /*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;
  39. /*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
  40. /*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
  41. /*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
  42. /*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;

阅读(12611) | 评论(1) | 转发(0) |
给主人留下些什么吧!~~

6742368762015-09-24 15:45:27

谢谢,从你的分享里面学到了很多。来 么么屌