重温MySQL与JDBC小时代

本文详细介绍了如何在计算机上安装MySQL 5.7,包括配置网络访问。接着,通过Eclipse创建Java项目,并下载与导入Mysql-connector-java.jar驱动包,实现了JDBC连接MySQL数据库。在数据库中创建了`websites`表并插入数据,最后展示了使用Java代码执行查询并显示结果的过程。然而,在实际运行时遇到了问题,未能得到预期结果。
摘要由CSDN通过智能技术生成

一:Mysql的安装

1.mysql先前在电脑已安装,直接使用即可

 在下面分享完整Mysql安装教程(来自csdn用户一只特立独行的猪)er

进行安装,该版本为mysql5.7。
1、在这里插入图片描述

2在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

等待每个组件的安装
在这里插入图片描述

按住所有组件后,next。开始配置数据库
在这里插入图片描述

配置数据库的网路访问
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

MySql配置完成
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

mySql数据库安装完成

二:使用JDBC连接Mysql

1.下载安装Eclipse:(本机已下载安装完成)

 2.新建项目Project并且在项目类型中选择Java Project

3.建立Test1的新项目,如图,创建成功

 

4.导入Mysql的包,右键Test1,选择Build path 选择Add External Archiyes

5.下载Mysql的java包-----Mysql-connector-java.jar包的下载教程:

a.进入Mysql官网并点击选择DOWNLOADS:

 b.鼠标向下滑动并选择画圈圈的社区下载

 c.选择Connector/J

 

d.选择Platform Independent选项

e.选择第二个进行下载即可

6.导入刚才下载的包,如图所示,导入完成

三:建立数据库并查询数据

1.打开这个软件

2.建立连接,设置密码并测试连接

3.新建数据库

4.新建立查询表

 

创建表:

CREATE TABLE `websites` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `name` char(20) NOT NULL DEFAULT '' COMMENT '站点名称',
  `url` varchar(255) NOT NULL DEFAULT '',
  `alexa` int(11) NOT NULL DEFAULT '0' COMMENT 'Alexa 排名',
  `country` char(10) NOT NULL DEFAULT '' COMMENT '国家',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=10 DEFAULT CHARSET=utf8;

 5.点击运行,如图所示即为创建成功!

6.添加数据:

新建查询

INSERT INTO `websites` VALUES ('1', 'Google', 'https://www.google.cm/', '1', 'USA'), ('2', '淘宝', 'https://www.taobao.com/', '13', 'CN'), ('3', '菜鸟教程', 'http://www.runoob.com', '5892', ''), ('4', '微博', 'http://weibo.com/', '20', 'CN'), ('5', 'Facebook', 'https://www.facebook.com/', '3', 'USA');

 运行测试:(成功了)

7.查看数据:

 三:JDBC连接Mysql数据库并查询数据:

 1.建立test package

2建立class 类

 

3.输入代码并执行即可!

package Test;

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

import com.mysql.jdbc.Statement;

public class MySQLDemo {
	static final String driverName="org.gjt.mm.mysql.Driver";
	static final String dbUrl="jdbc:mysql://localhost:3306/test";
	static final String userName="root";
	static final String password="xyp20000921";
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		// MySQL 8.0 以下版本 - JDBC 驱动名及数据库 URL

	        Connection conn = null;
	        Statement stmt = null;
	        try{
	            // 注册 JDBC 驱动
	            Class.forName(driverName);
	        
	            // 打开链接
	            System.out.println("连接数据库...");
	            conn = DriverManager.getConnection(dbUrl,userName,password);
	        
	            // 执行查询
	            System.out.println(" 实例化Statement对象...");
	            stmt = (Statement) conn.createStatement();
	            String sql;
	            sql = "SELECT id, name, url FROM websites";
	            ResultSet rs = stmt.executeQuery(sql);
	        
	            // 展开结果集数据库
	            while(rs.next()){
	                // 通过字段检索
	                int id  = rs.getInt("id");
	                String name = rs.getString("name");
	                String url = rs.getString("url");
	    
	                // 输出数据
	                System.out.print("ID: " + id);
	                System.out.print(", 站点名称: " + name);
	                System.out.print(", 站点 URL: " + url);
	                System.out.print("\n");
	            }
	            // 完成后关闭
	            rs.close();
	            stmt.close();
	            conn.close();
	        }catch(SQLException se){
	            // 处理 JDBC 错误
	            se.printStackTrace();
	        }catch(Exception e){
	            // 处理 Class.forName 错误
	            e.printStackTrace();
	        }finally{
	            // 关闭资源
	            try{
	                if(stmt!=null) stmt.close();
	            }catch(SQLException se2){
	            }// 什么都不做
	            try{
	                if(conn!=null) conn.close();
	            }catch(SQLException se){
	                se.printStackTrace();
	            }
	        }
	        System.out.println("Goodbye!");
	    }
	}


 4.结果检验:

本人一直运行有误

正确结果应为:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值