package com.mysql.test;

 import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement; public class JDBC_Test1 {
// 创建静态全局变量
static Connection conn; static Statement st; public static void main(String[] args) {
//insert(); //插入添加记录
//update(); //更新记录数据
//delete(); //删除记录
query(); //查询记录并显示
} /* 插入数据记录,并输出插入的数据记录数*/
public static void insert() { conn = getConnection(); // 首先要获取连接,即连接到数据库 try {
st = (Statement) conn.createStatement(); // 创建用于执行静态sql语句的Statement对象 String sql = "INSERT INTO employee(num, d_id, name,age, sex, homeaddr)"
+ " VALUES (8, 1007, '温家宝', 66,'男','北京朝阳区')"; // 插入数据的sql语句 int count = st.executeUpdate(sql); // 执行插入操作的sql语句,并返回插入数据的个数 System.out.println("向employee表中插入 " + count + " 条数据"); //输出插入操作的处理结果 conn.close(); //关闭数据库连接 } catch (SQLException e) {
System.out.println("插入数据失败" + e.getMessage());
}
} /* 更新符合要求的记录,并返回更新的记录数目*/
public static void update() {
conn = getConnection(); //同样先要获取连接,即连接到数据库
try {
st = (Statement) conn.createStatement(); //创建用于执行静态sql语句的Statement对象,st属局部变量 String sql = "update employee set name='奥巴马' where d_id = 1006";// 更新数据的sql语句 int count = st.executeUpdate(sql);// 执行更新操作的sql语句,返回更新数据的个数 System.out.println("employee表中更新 " + count + " 条数据"); //输出更新操作的处理结果 conn.close(); //关闭数据库连接 } catch (SQLException e) {
System.out.println("更新数据失败");
}
} /* 查询数据库,输出符合要求的记录的情况*/
public static void query() { conn = getConnection(); //同样先要获取连接,即连接到数据库
try {
st = (Statement) conn.createStatement(); //创建用于执行静态sql语句的Statement对象,st属局部变量
String sql = "select * from employee"; // 查询数据的sql语句 ResultSet rs = st.executeQuery(sql); //执行sql查询语句,返回查询数据的结果集
System.out.println("最后的查询结果为:");
while (rs.next()) { // 判断是否还有下一个数据 // 根据字段名获取相应的值
int num = rs.getInt("num");
int d_id = rs.getInt("d_id");
String name = rs.getString("name");
int age = rs.getInt("age");
String sex = rs.getString("sex");
String homeaddr = rs.getString("homeaddr"); //输出查到的记录的各个字段的值
System.out.println(num + " " + d_id + " " + name + " " + age
+ " " + sex + " " + homeaddr); }
conn.close(); //关闭数据库连接 } catch (SQLException e) {
System.out.println("查询数据失败");
}
} /* 删除符合要求的记录,输出情况*/
public static void delete() { conn = getConnection(); //同样先要获取连接,即连接到数据库
try {
st = (Statement) conn.createStatement(); //创建用于执行静态sql语句的Statement对象,st属局部变量 String sql = "delete from employee where d_id = 1005";// 删除数据的sql语句 int count = st.executeUpdate(sql);// 执行sql删除语句,返回删除数据的数量 System.out.println("employee表中删除 " + count + " 条数据\n"); //输出删除操作的处理结果 conn.close(); //关闭数据库连接 } catch (SQLException e) {
System.out.println("删除数据失败");
} } /* 获取数据库连接的函数*/
public static Connection getConnection() {
Connection con = null; //创建用于连接数据库的Connection对象
try {
Class.forName("com.mysql.jdbc.Driver");// 加载Mysql数据驱动 con = DriverManager.getConnection(
"jdbc:mysql://localhost:3306/company", "root", "hjf19920121");// 创建数据连接 } catch (Exception e) {
System.out.println("数据库连接失败" + e.getMessage());
}
return con; //返回所建立的数据库连接
}
}
 package com.mysql.test;

 import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement; public class JDBC_test {
static Connection connection = null;
public static void main(String[] args) {
executeTest(); }
/* 获取数据库连接的函数*/
public static Connection getConnection() {
String url = "jdbc:mysql://localhost:3306/company";//获取协议,IP和端口等信息
String user = "root";//获取数据库用户名
String password = "hjf19920121";//获取数据库用户密码 try {
Class.forName("com.mysql.jdbc.Driver");//指定JDBC驱动的类型
connection = DriverManager.getConnection(url, user, password);
} catch (Exception e) {
e.printStackTrace();System.out.println("数据库连接失败" + e.getMessage());
} return connection;
} public static void executeTest() {
connection = getConnection();//同样先要获取连接,即连接到数据库
try {
Statement statement = connection.createStatement();//创建Statement对象 String sql = "delete from employee where d_id = 1005"; boolean st = statement.execute(sql);//如果sql语句是select语句,该方法返回true,如果是update,insert,delete语句该方法返回false
if(st==true){
ResultSet result = statement.executeQuery(sql); System.out.println("最后的查询结果为:"); while(result.next()){
// 根据字段名获取相应的值
int num = result.getInt("num");
int d_id = result.getInt("d_id");
String name = result.getString("name");
int age = result.getInt("age");
String sex = result.getString("sex");
String homeaddr = result.getString("homeaddr"); //输出查到的记录的各个字段的值
System.out.println(num + " " + d_id + " " + name + " " + age
+ " " + sex + " " + homeaddr);
}
}
else{
int i = statement.getUpdateCount();//获取发生变化的记录数
System.out.println(i);
}
connection.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}

java访问mysql数据库的更多相关文章

  1. [JavaWeb基础] 003.JAVA访问Mysql数据库

    上面两篇讲解了简单的JSP + Servlet的搭建和请求,那么后面我们肯定要用到数据交互,也就是操纵数据库的数据,包括对数字的增加,删除,修改,查询.我们就用简单的MySql来做例子 我们需要引入驱 ...

  2. MySQL入门很简单: 15 java访问MySQL数据库

    1. 连接数据库 1.1 下载安装驱动 java通过JDBC(Java Database Connectivity,Java数据库连接)来访问MySQL数据库.JDBC的编程接口提供的接口和类与MyS ...

  3. java 访问 mysql 数据库的字符集设置

    mysql是在linux下,java代码通过jdbc访问总是中文乱码.做过如下尝试: 1)修改 mysql的 my.cnf文件,设置 default-character-set等参数 2) 利用alt ...

  4. 编程实践:使用java访问mySQL数据库

    1.虚拟机安装mySQL 服务器, 宿主机分别使用navicat工具和java代码 访问mySQL,组网图如下: 2. 查看mySQL的服务器状态,如下: 3. 服务器上查看数据库和数据表内容如下: ...

  5. java文件来演示如何访问MySQL数据库

    java文件来演示如何访问MySQL数据库. 注:在命令行或用一个SQL的前端软件创建Database. 先创建数据库: CREATE DATABASE SCUTCS; 接着,创建表: CREATE ...

  6. Java连接MYSQL 数据库的连接步骤

    这篇文章主要以MySQL为例讲下Java如何连接到数据库的. 当然,首先要安装有JDK(一般是JDK1.5.X).然后安装MySQL,这些都比较简单,具体过程就不说了.配置好这两个环境后,下载JDBC ...

  7. Java 操作MySql数据库

    Java 项目开发中数据库操作是很重要的一个方面,对于初学者来说,MySql是比较容易熟悉的一种常见数据库,这篇文章记录了如何用Java来操作MySql数据库. 第一章 JDBC的概念 JDBC(Ja ...

  8. Java连接MySQL数据库及简单操作代码

    1.Java连接MySQL数据库 Java连接MySql需要下载JDBC驱动MySQL-connector-java-5.0.5.zip(举例,现有新版本).然后将其解压缩到任一目录.我是解压到D盘, ...

  9. 转载:Java连接MySQL 数据库的正确操作流程

    转载网址:http://www.bitscn.com/pdb/mysql/201005/186551.html       以下的文章主要介绍的是Java连接MySQL 数据库(以MySQL数据库为例 ...

随机推荐

  1. C#调用存储过程执行缓慢,但在数据库中执行却很快的问题

    参考: http://www.debugease.com/mssqlbasic/976568.html https://www.cnblogs.com/Irving/p/3951220.html ht ...

  2. 21.QT-QTreeWidget,QTabWidget

    QTreeWidget树形列表 设置标签相关函数 void QTreeWidget::setHeaderItem (QTreeWidgetItem * item ); void QTreeWidget ...

  3. Docker 系列二(操作镜像).

    一.镜像管理 1.拉取镜像 docker pull [选项] [Docker Registry 地址[:端口号]/]仓库名[:标签] -- Docker 镜像仓库地址 :一般是 域名或者IP[:端口号 ...

  4. 用Python实现Zabbix-API 监控

    做运维的朋友应该知道,公司IDC机房经常有上架.下架.报修和报废的服务器.如果服务器数量很多的时候很容易造成监控遗漏.       大的互联网公司把监控系统和CMDB(资产管理系统|配置管理数据库系统 ...

  5. 用js实现超链接导航菜单点击切换选中时的状态

    项目中使用到点解导航切换不同的颜色,如果只是li选项卡还好办,这次用到的超链接选项卡,因为a链接每次点击都会刷新,所以浏览器记不住点击的状态,也没法切换点击状态,因为项目中有好多地方要用到,在网上找了 ...

  6. BZOJ 1188: [HNOI2007]分裂游戏(multi-nim)

    Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 1386  Solved: 840[Submit][Status][Discuss] Descripti ...

  7. POJ 2942Knights of the Round Table(tarjan求点双+二分图染色)

    Time Limit: 7000MS   Memory Limit: 65536K Total Submissions: 13954   Accepted: 4673 Description Bein ...

  8. MachineLN博客目录

    MachineLN博客目录 https://blog.csdn.net/u014365862/article/details/78422372 本文为博主原创文章,未经博主允许不得转载.有问题可以加微 ...

  9. eclipse安装其他颜色主题包

    eclipse安装其他颜色主题包: 用Help-Install new software安装的时候,work with的URL是 http://eclipse-color-theme.github.c ...

  10. C#生成唯一订单号

    今天系统出了一个问题,发现生成的订单号存在重复的情况了,这是要命的bug,不马上解决,就会有投诉了 经过改进后的代码我先简单的放一下,后面在慢慢的写清楚整个流程 string key = " ...