利用JDBC实现java与MySQL数据库的连接及相关操作

利用JDBC实现java和MySQL数据库的连接,并实现增删改查等操作。
具体步骤分为:
一、将JDBC的驱动包添加到项目的classpath中
下载地址:http://mirrors.ibiblio.org/pub/mirrors/maven2/mysql/mysql-connector-java/5.0.8/mysql-connector-java-5.0.8.jar
二、实现具体的代码操作,打通数据库
1、 加载驱动程序
Class.forName(“com.mysql.jdbc.Driver”);
2、获取数据库连接
System.out.println(“Connecting to database…”);
Connection conn = DriverManager.getConnection(URL, USER, PASSWORD);
System.out.println(“Connected database successfully…”);
3、操作数据库,实现增删改查。
Statement stmt = conn.createStatement();
三、数据库基本操作
String sql = “此处添加SQL语句”;
stmt.executeUpdate(sql);//利用executeUpdate()方法执行。

以下代码示例中实现了数据库的创建、删除;表的创建、删除、插入、查询、更新以及where、like子句的使用。基本语句都一致,只是迭代过程。

package com.helen.jdbc;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;

/**
 * @author helen
 * 2015-9-1下午2:54:38
 *
 */
public class JdbcRoad1 {
    private static final String URL = "jdbc:mysql://localhost:3306/students?characterEncoding=gbk";
    private static final String USER = "root";
    private static final String PASSWORD = "901230";

    public static void main(String[] args) throws Exception{
        //1、加载驱动程序
        Class.forName("com.mysql.jdbc.Driver");
        //2、获取数据库连接
        System.out.println("Connecting to database...");
        Connection conn = DriverManager.getConnection(URL, USER, PASSWORD);
        System.out.println("Connected database successfully...");
        //3、操作数据库,实现增删改查
        Statement stmt = conn.createStatement();
        //JDBC创建数据库
            /*System.out.println("Creating database...");
            String create = "CREATE DATABASE STUDENTS";
            stmt.executeUpdate(create);
            System.out.println("Database created successfully...");*/
        //JDBC选择特定数据库:在URL中直接指定!
        //JDBC删除数据库
            /*String drop = "DROP DATABASE STUDENTS";
            stmt.executeUpdate(drop);
            System.out.println("Database deleted successfully...");*/
        //JDBC创建表
            /*String sql = "CREATE TABLE REGISTRATION " +
                "(id INTEGER not NULL, " +
                " first VARCHAR(255), " + 
                " last VARCHAR(255), " + 
                " age INTEGER, " + 
                " PRIMARY KEY ( id ))"; 
            stmt.executeUpdate(sql);
            System.out.println("Created table in given database...");*/
        //JDBC删除表
            /*String sql = "DROP TABLE REGISTRATION ";
            stmt.executeUpdate(sql);
            System.out.println("Table  deleted in given database...");*/
        //JDBC插入记录
            /*String sql = "INSERT INTO Registration " +
                    "VALUES (100, 'Zara', 'Ali', 18)";
            stmt.executeUpdate(sql);
            sql = "INSERT INTO Registration " +
                    "VALUES (101, 'Mahnaz', 'Fatma', 25)";
            stmt.executeUpdate(sql);
            sql = "INSERT INTO Registration " +
                    "VALUES (102, 'Zaid', 'Khan', 30)";
            stmt.executeUpdate(sql);
            sql = "INSERT INTO Registration " +
                    "VALUES(103, 'Sumit', 'Mittal', 28)";
            stmt.executeUpdate(sql);
            System.out.println("Inserted records into the table...");*/
        //JDBC查询表记录
            /*String sql = "SELECT id, first, last, age FROM Registration";
            ResultSet rs = stmt.executeQuery(sql);
            while(rs.next()){
                //Retrieve by column name
                int id  = rs.getInt("id");
                int age = rs.getInt("age");
                String first = rs.getString("first");
                String last = rs.getString("last");
                //Display values
                System.out.print("ID: " + id);
                System.out.print(", Age: " + age);
                System.out.print(", First: " + first);
                System.out.println(", Last: " + last);
            }
            rs.close();*/
        //JDBC更新表记录
            /*String sql = "UPDATE Registration " +
                       "SET age = 30 WHERE id in (100, 101)";
            stmt.executeUpdate(sql);*/
        //JDBC删除表记录
            /*String sql = "DELETE FROM Registration " +
                "WHERE id = 101";
            stmt.executeUpdate(sql);*/
        //JDBC WHERE字句
            /*System.out.println("Fetching records with condition...");
            sql = "SELECT id, first, last, age FROM Registration" +
                           " WHERE id >= 101 ";
            ResultSet rs = stmt.executeQuery(sql);
            rs = stmt.executeQuery(sql);
            while(rs.next()){
                 //Retrieve by column name
                 int id  = rs.getInt("id");
                 int age = rs.getInt("age");
                 String first = rs.getString("first");
                 String last = rs.getString("last");
                 //Display values
                 System.out.print("ID: " + id);
                 System.out.print(", Age: " + age);
                 System.out.print(", First: " + first);
                 System.out.println(", Last: " + last);
             }
             rs.close();    */
        //JDBC LIKE子句
             /*System.out.println("Fetching records with condition...");
             String sql = "SELECT id, first, last, age FROM Registration" +
                           " WHERE first LIKE '%za%' ";
             ResultSet rs = stmt.executeQuery(sql);
             rs = stmt.executeQuery(sql);

             while(rs.next()){
                 //Retrieve by column name
                 int id  = rs.getInt("id");
                 int age = rs.getInt("age");
                 String first = rs.getString("first");
                 String last = rs.getString("last");

                 //Display values
                 System.out.print("ID: " + id);
                 System.out.print(", Age: " + age);
                 System.out.print(", First: " + first);
                 System.out.println(", Last: " + last);
             }
             rs.close();*/
        //JDBC排序
            /*System.out.println("Fetching records in ascending order...");
            String sql = "SELECT id, first, last, age FROM Registration" +
                           " ORDER BY first DESC";
            ResultSet rs = stmt.executeQuery(sql);

            while(rs.next()){
                 //Retrieve by column name
                 int id  = rs.getInt("id");
                 int age = rs.getInt("age");
                 String first = rs.getString("first");
                 String last = rs.getString("last");

                 //Display values
                 System.out.print("ID: " + id);
                 System.out.print(", Age: " + age);
                 System.out.print(", First: " + first);
                 System.out.println(", Last: " + last);
             }
            rs.close();*/

    }
}

笔者在创建数据库连接时,尝试多次都未成功,先期是驱动包未正确导入,解决以后又花费了一个来小时力气,最后查明原因,是数据库的用户名不正确。。。。所以说一定要仔细,要不会带来很大麻烦。

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值