eclipse环境下,java操作MySQL的简单演示
首先先通过power shell 进入MySQL 查看现在数据库的状态(博主是win10系统)
右键开始,选择Windows powershell ,输入MySQL -u用户名 -p密码

选择数据库(use mytest;),查看当前存在的表(show tables;),发现有多余的表,删除多余表,可以一个删除,也可以一次删除多个(drop table aaa;drop tables biao,qqq,qwde,qwe;)

分别查看当前表内的记录
select * from cars;
select * from students;
select * from uses;

到此,当前数据库的内容的查看完毕。
接下来打开eclipse,下面是源码:
package Test; import java.io.UnsupportedEncodingException;
import java.sql.*;
import java.util.Scanner; public class HelloMySQL {
static // 驱动程序名
String driver = "com.mysql.jdbc.Driver";
// URL指向要访问的数据库名
static String url = "jdbc:mysql://127.0.0.1:3306/mytest";
// 用户名,密码
static String user = "root";
static String password = "root";
static Connection conn; public static void main(String[] args){
init();
display_main();
close(); }
/**
* 显示主菜单
*/
private static void display_main() {
Scanner sc = new Scanner(System.in);
int choose = 0;
String sql;
String sInput;
String sCarNo, sStartDate,sEndDate;
// statement用来执行SQL语句
PreparedStatement statement = null;
ResultSet rs = null;
boolean result = false; while(true){
System.out.println("请输入所选择操作的序号");
System.out.println("1:车辆信息增删查");
System.out.println("2,用车登记");
System.out.println("3,用车情况查询");
System.out.println("4,用车情况统计");
System.out.println("5,退出"); choose = sc.nextInt();
switch(choose){
case 1:
display_caroptions();
break;
case 2:
System.out.println("请分行输入要插入的车号,开始使用时间,结束使用时间:");
sc.nextLine();
sInput = sc.nextLine();
System.out.println(sInput);
String sInput1 = sc.nextLine();
System.out.println(sInput1);
String sInput2 = sc.nextLine();
System.out.println(sInput2); // 要执行的SQL语句
sql = new String("insert into uses(cno,startdate,enddate) values(?,?,?)");
System.out.println(sql);
try {
statement = conn.prepareStatement(sql);
statement.setString(1, sInput);
statement.setString(2, sInput1);
statement.setString(3, sInput2); //execute返回bool类型,表示执行结果,insert语句使用execute()
result = statement.execute();
if(!result){
System.out.println("插入成功");
}else{
System.out.println("插入失败");
}
} catch (SQLException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
} break;
case 3:
System.out.println("请输入要查询的车号:");
sc.nextLine();
sInput = sc.nextLine(); // 要执行的SQL语句
// sql = new String("select * from uses where cno = '" + sInput + "'");
sql = new String("select * from uses where cno=?");
try {
statement = conn.prepareStatement(sql);
// statement.setString(1, sInput);
statement.setString(1, "LP4200"); // 结果集rs为查询到的结果的集合,select语句使用executeQuery()
rs = statement.executeQuery(); System.out.println("-----------------");
System.out.println("执行结果如下所示:");
System.out.println(" 车号" + "\t" + " 使用开始时间"+ " 使用结束时间"); while(rs.next()) { // 选择数据
sCarNo = rs.getString("cno");
sStartDate = rs.getString("startdate");
sEndDate = rs.getString("enddate"); // 输出结果
System.out.println(sCarNo + "\t" + sStartDate + "\t" + sEndDate);
}
} catch (SQLException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
} break;
case 4:
try {
// 要执行的SQL语句
sql = "select * from uses";
statement = conn.prepareStatement(sql);
// 结果集
rs = statement.executeQuery(); System.out.println("-----------------");
System.out.println("执行结果如下所示:");
System.out.println(" 车号" + "\t" + " 使用开始时间" + "\t" + " 使用结束时间"); while(rs.next()) { // 选择数据
sCarNo = rs.getString("cno");
sStartDate = rs.getString("startdate");
sEndDate = rs.getString("enddate"); // 输出结果
System.out.println(sCarNo + "\t" + sStartDate + "\t" + sEndDate);
} rs.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} break;
case 5:
return;
default:
break;
}
} } /**
* 显示车辆信息相关操作
*/
private static void display_caroptions() {
Scanner sc = new Scanner(System.in);
int choose = 0;
int iChangeNum = 0;
String sql;
String sInput;
String sCarNo, sCarBrand,sCarType;
float fPrice = 0;
// statement用来执行SQL语句
PreparedStatement statement = null;
ResultSet rs = null;
boolean result = false;
while(true){
System.out.println("请输入所选择操作的序号");
System.out.println("1:插入车辆信息");
System.out.println("2,删除车辆信息");
System.out.println("3,查询车辆信息");
System.out.println("4,退出"); choose = sc.nextInt();
System.out.println(choose);
switch(choose){
case 1:
System.out.println("请分行输入要插入的车号,汽车品牌,汽车类型,租借每天价格:");
sc.nextLine();
sInput = sc.nextLine();
System.out.println(sInput);
String sInput1 = sc.nextLine();
System.out.println(sInput1);
String sInput2 = sc.nextLine();
System.out.println(sInput2);
fPrice = sc.nextFloat();
System.out.println(fPrice); // 要执行的SQL语句
sql = new String("insert into cars values(?,?,?,?)");
try {
statement = conn.prepareStatement(sql);
statement.setString(1, sInput);
statement.setString(2, sInput1);
statement.setString(3, sInput2);
statement.setFloat(4, fPrice);
// 结果集
result = statement.execute(); if(!result){
System.out.println("插入成功");
}else{
System.out.println("插入失败");
}
} catch (SQLException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
break; case 2: System.out.println("请输入要删除的车号:");
sc.nextLine();
sInput = sc.nextLine(); // 要执行的SQL语句
sql = new String("delete from cars where cno = ?");
try {
statement = conn.prepareStatement(sql);
statement.setString(1, sInput); // 更新数据条目,executeUpdate()返回执行SQL语句后,该表更新的记录的数目
iChangeNum = statement.executeUpdate(); if(iChangeNum != 0){
System.out.println(iChangeNum + "条记录已被删除");
}else{
System.out.println("删除失败");
}
} catch (SQLException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
break; case 3: System.out.println("请输入要查询的车号:");
sc.nextLine();
sInput = sc.nextLine(); // 要执行的SQL语句
sql = new String("select * from cars where cno=?" );
try {
statement = conn.prepareStatement(sql);
statement.setString(1, sInput);
// 结果集
System.out.println(sInput);
rs = statement.executeQuery(); System.out.println("-----------------");
System.out.println("执行结果如下所示:");
System.out.println(" 车号" + "\t" + "品牌"+ "\t"+ "类型"+ "\t" + "每租一天价格"); while(rs.next()) { // 选择数据
sCarNo = rs.getString("cno");
sCarBrand = rs.getString("cbrand");
sCarType = rs.getString("cartype");
fPrice = rs.getFloat("cpriceperday"); // 输出结果
System.out.println(sCarNo + "\t" + sCarBrand + "\t" + sCarType + "\t" + fPrice);
}
} catch (SQLException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
} break;
case 4:
return;
default:
break;
}
}
} /**
* 初始化相关资源
*/
private static void init(){
try {
// 加载驱动程序
Class.forName(driver); // 连续数据库
conn = DriverManager.getConnection(url, user, password); if(!conn.isClosed())
System.out.println("Succeeded connecting to the Database!"); } catch(ClassNotFoundException e) {
System.out.println("Sorry,can`t find the Driver!");
e.printStackTrace();
} catch(SQLException e) {
e.printStackTrace();
} catch(Exception e) {
e.printStackTrace();
}
} /**
* 关闭相关资源
*/
private static void close(){
try {
conn.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} finally{
System.out.println("感谢您的使用,再见");
}
}
}
接下来是测试:




以上是车辆操作的部分
接下来是用车用车相关的操作



eclipse环境下,java操作MySQL的简单演示的更多相关文章
- java(一)IntelliJ和eclipse环境下的Hello World
1. IntelliJ环境下的Hello World 1. 启动IntelliJ IDE,选择File->New->Project 选择Java如果没有出现Project SDK,则选择N ...
- java 在centos6.5+eclipse环境下调用opencv实现sift算法
java 在centos6.5+eclipse环境下调用opencv实现sift算法,代码如下: import org.opencv.core.Core; import org.opencv.core ...
- eclipse环境下基于已构建struts2项目整合spring+hibernate
本文是基于已构建的struts2项目基础上整合 spring+hibernate,若读者还不熟悉struts2项目,请先阅读 eclipse环境下基于tomcat-7.0.82构建struts2项目 ...
- 《高可用MySQL》1 – Windows环境下压缩版MySQL安装
近日在读O’REILIY系列的<高可用MySQL>, 自然少不了主从(Master-Slave)配置和横向扩展相关的内容.Master-Slave这东西吧,在许多公司都是标配,开发中基本天 ...
- 详细的图文教程来实现 eclipse环境下如何配置tomcat,并且把项目部署到Tomcat服务器上
很多初学,尤其自学JavaWeb的朋友首次在eclipse下配置tomcat时,总会有种难下手的感觉,在此,通过图文解说的方法,最直观的向大家演示一遍该配置过程. 第一部分:eclipse环境下如何配 ...
- eclipse环境下如何配置tomcat
eclipse环境下如何配置tomcat 很多初学,尤其自学JavaWeb的朋友首次在eclipse下配置tomcat时,总会有种难下手的感觉,在此,通过图文解说的方法,最直观的向大家演示一遍该配置过 ...
- IDEA环境下GIT操作浅析之一Idea下仓库初始化与文件提交涉及到的基本命令
目标总括 idea 下通过命令操作文件提交,删除,与更新并推送到github 开源库基本操作idea 下通过命令实现分支的创建与合并操作 idea 下通过图形化方式实现idea 项目版本控制基本操作 ...
- Eclipse IDE下的Spring框架使用简单实例
Eclipse IDE下的Spring框架使用简单实例 1 准备Java jdk安装. Eclipse软件安装.根据系统安装32/64版本,选择Eclipse IDE for Java Develop ...
- 总结java操作MySQL 即JDBC的使用
java.sql包中存在DriverManager类,Connection接口,Statement接口和ResultSet接口.类和接口作用如下: DriverManager:主要用于管理驱动程序和连 ...
随机推荐
- 201521044091 《Java程序设计》第3周学习总结
1. 本周学习总结 初学面向对象,会学习到很多碎片化的概念与知识.尝试学会使用思维导图将这些碎片化的概念.知识组织起来.请使用纸笔或者下面的工具画出本周学习到的知识点.截图或者拍照上传. 本周学习总结 ...
- 201521123096《Java程序设计》第三周学习总结
1. 本周学习总结 2. 书面作业 (1)代码阅读 public class Test1 { private int i = 1;//这行不能修改 private static int j = 2; ...
- Git与码云(Git@OSC)入门-如何在实验室和宿舍同步你的代码(2)
4. 处理冲突 4.1 向远程仓库push时无法提交成功,提示在push前应该先pull 如图所示: 有可能是因为远程仓库的版本与本地仓库的版本不一致,所以应先git pull将远程仓库的内容合并到本 ...
- linux 环境NTP配置与开机自启动(转)
Linux下配置NTP服务器一.前言: 默认NTP服务端口: UDP/123 本文配置的NTP工作模式: 使用client/server方式,该方式适用于一台时间服务器接收上层 ...
- 生成验证码JSP【复用代码】
该JSP可以生成验证码.以后用到的时候就方便了. <%@ page language="java" pageEncoding="UTF-8"%> & ...
- Python学习笔记008_类_对象_继承_组合_类相关的BIF
# 对象 = 属性 + 方法>>> # Python中的类名约定以大写字母开始>>> # tt = Turtle() 这就是创建类实例的方法,其它语言用new ,它 ...
- Activiti-01
1, Activiti官网:http://www.activiti.org/ 主页可以看到jar包的下载. 2, 进入http://www.activiti.org/userguide/index. ...
- Linux下Birt、JTreeChart中文乱码问题解决办法
Linux下JTreeChart,Birt等报表工具显示中文乱码解决 1) 现象: 在Windows上生成的报表图片展示正常,但是在Linux上显示(怪异的小方块“口”): 2)问题定位: 这是lin ...
- Java中增强for循环的用法
此方法在jdk1.5之后才出现. 1:遍历数组 语法: for (Type value : array) { expression value; } 例子: void Sum() { int[] ar ...
- 分享基于分布式Http长连接框架
第一次在博客园写文章,长期以来只是潜水中.本着不只索取,而要奉献的精神,随笔文章之. 现贡献一套长连接的框架.如下特性: 1:发布者可异步发送消息,消息如果发送失败,可重试发送,重试次数基于配置,消息 ...