一、了解几个概念(了解)

  1.DriverManager

    1)必须知道它是管理数据库的所有驱动程序

    2)它的所有方法都是静态的,其中最重要的是getConnection()方法,我们可以通过它获取一个数据库的连接对象。

  2.Connection

    数据库连接对象

  3.Resultset

    1)用来暂时存放查询结果的一个对象

    2)最重要的方法时next()方法,该方法将指针下移一行

  4.Statement和preparedStatement的区别

    它俩的区别主要是PrepareStatement把sql语句中的变量抽取出来了,它俩可以互相替换使用。

    例子:

String sql = "select * from users where  username= '"+username+"' and userpwd='"+userpwd+"'";
stmt = conn.createStatement();
rs = stmt.executeQuery(sql); String sql = "select * from users where username=? and userpwd=?";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1, username);
pstmt.setString(2, userpwd);
rs = pstmt.executeQuery();

  5.execute、executeQuery和executeUpdate的区别

    1)execute执行增删改查操作

    2)executeQuery执行查询操作,返回的正是ResultSet,再对ResultSet对象进行遍历,即可查询结果。

    3)executeUpdate执行的是增删改操作

JAVA操作mysql实例:

说明:对数据库db5中的test表进行操作,test表中有三个字段,分别是name,age,sex

public class test2 {

    private static String url = "jdbc:mysql://localhost:3306/db5";
private static String user = "root";
private static String password = "123456";
private static String DriverName = "com.mysql.jdbc.Driver"; public static Connection GetConn() {
Connection conn = null;
try {
Class.forName(DriverName);
conn = DriverManager.getConnection(url, user, password);
System.out.println("数据库连接成功");
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
} finally {
return conn;
}
} public static void insert() throws SQLException {
Connection conn = GetConn();
// String sql = "insert into test(name,age,sex) values ('yj1',1,'f')";
// Statement statement = conn.createStatement();
// statement.executeUpdate(sql);
String sql = "insert into test(name,age,sex) values (?,?,?)";
PreparedStatement preparedStatement = conn.prepareStatement(sql);
preparedStatement.setString(1, "yj2");
preparedStatement.setInt(2, 4);
preparedStatement.setString(3, "f");
preparedStatement.executeUpdate();
conn.close();
} public static void select() throws SQLException {
Connection conn = GetConn();
String sql = "select * from test";
Statement statement = conn.createStatement();
ResultSet set = statement.executeQuery(sql);
String name = null;
String sex = null;
int age;
//next 看是否有下一个数据
while (set.next()) {
name = set.getString(1);
age = set.getInt(2);
sex = set.getString("sex");
System.out.println(name + age + sex);
}
conn.close();
} public static void update() throws SQLException{
Connection conn = GetConn();
String sql = "update test set age=? where name = ?";
PreparedStatement preparedStatement = conn.prepareStatement(sql);
preparedStatement.setInt(1,200);
preparedStatement.setString(2,"yj1");
preparedStatement.executeUpdate();
conn.close();
} public static void delete() throws SQLException{
Connection conn = GetConn();
String sql = "delete from test where name = 'yj1'";
Statement st = conn.createStatement();
st.executeUpdate(sql);
conn.close();
} public static void main(String[] args) throws SQLException { }
}

JAVA对mysql的基本操作的更多相关文章

  1. java 连接 MySQL

    java 连接 MySQL 1.准备工作 需要下载的工具: MySQL:http://www.mysql.com/downloads/ MySQL的可视化工具SQLyog:https://www.we ...

  2. servlet中Java连接数据库后的基本操作

    servlet中Java连接数据库后的基本操作 在eclipse中新建一个工程:login 在Server中新建一个服务器,基本的操作不用说了,在前两天的笔记中可以找到; 需要知道数据库的用户名和密码 ...

  3. java连接mysql

    Java 连接 MySQL 需要驱动包,最新版下载地址为:http://dev.mysql.com/downloads/connector/j/,解压后得到jar库文件,然后在对应的项目中导入该库文件 ...

  4. java调用mysql服务做备份与恢复

    首先添加mysql的bin到环境变量,这样可以简写部分命令,并且做到不依赖系统mysql的具体安装路径. 重启计算机可以让添加的环境变量在java代码中调用时生效.(cmd中生效但java中调用没有生 ...

  5. Java实现MySQL数据库导入

    距离上班还有一段时间.现在总结一下如何使用Java语言实现MySQL数据库导入: 首先新建名为test的数据库: 其次执行下面Java代码: import java.io.File; import j ...

  6. Java实现MySQL数据库备份(二)

    权声明:本文为博主原创文章,未经博主允许不得转载. 博客<Java实现MySQL数据库备份(一)>使用I/O流的方式实现了MySQL数据库的备份,这种方法比较繁杂,下面介绍另一种备份MyS ...

  7. java连接mysql数据库详细步骤解析

    java连接mysql数据库详细步骤解析      第一步:下载一个JDBC驱动包,例如我用的是:mysql-connector-java-5.1.17-bin.jar      第二步:导入下载的J ...

  8. 让Java和MySQL连接起来

    Java 连接 MySQL 需要驱动包,可以下载菜鸟教程提供的 jar 包:http://static.runoob.com/download/mysql-connector-java-5.1.39- ...

  9. java操作MySQL数据库(插入、删除、修改、查询、获取所有行数)

    插播一段广告哈:我之前共享了两个自己写的小应用,见这篇博客百度地图开发的两个应用源码共享(Android版),没 想到有人找我来做毕设了,年前交付,时间不是很紧,大概了解了下就接下了,主要用到的就是和 ...

随机推荐

  1. Codeforces Round #422 (Div. 2)E. Liar sa+st表+dp

    题意:给你两个串s,p,问你把s分开顺序不变,能不能用最多k段合成p. 题解:dp[i][j]表示s到了前i项,用了j段的最多能合成p的前缀是哪里,那么转移就是两种,\(dp[i+1][j]=dp[i ...

  2. 判断PDF文件是否相同(通过二进制流判断)

    一.Java代码 1.将PDF转为字节流    /*     * @step     *  1.使用BufferedInputStream和FileInputStream从File指定的文件中读取内容 ...

  3. 关于HttpClient上传中文乱码的解决办法

    使用过HttpClient的人都知道可以通过addTextBody方法来添加要上传的文本信息,但是,如果要上传中文的话,或还有中文名称的文件会出现乱码的问题,解决办法其实很简单: 第一步:设置Mult ...

  4. 【C/C++】数组 & 指针

    int main() { ]; ]; ][]; ]; ]; ]; ][]; cout << sizeof(a) << endl; cout << sizeof(pa ...

  5. [cf contest697] D - Puzzles

    [cf contest697] D - Puzzles time limit per test 1 second memory limit per test 256 megabytes input s ...

  6. javaEE完整体系结构

    学习之前了解熟悉一下javaEE的完整体系结构会更有助于理解 https://segmentfault.com/a/1190000007090110

  7. apk文件二维码微信无法识别 APP在微信中二维码扫描无法下载的解决方案

    现在微信分享的功能很多,从分享的链接下载apk安卓包是很正常的,但是微信不让下载apk包,只能通过浏览器来下载,但是这要给用户一个提示吧,不然用户不知道 下面我们来实现,引导用户通过浏览器来下载apk ...

  8. loj.ac:#10024. 「一本通 1.3 练习 3」质数方阵

    CSDN的博客 友键 题目描述 质数方阵是一个\(5×5\)的方阵,每行.每列.两条对角线上的数字可以看作是五位的素数.方格中的行按照从左到右的顺序组成一个素数,而列按照从上到下的顺序.两条对角线也是 ...

  9. python练习小文章-文本爬虫

    一入“程”门深四海...... 有学习就得有练习,我来练一个文本爬虫,代码直接写到下面,抓取的是网页图片,简单好学,适合新手练习. 话不多说直接上干货! 1. 目标网址:https://www.jik ...

  10. linux TOP参数

    TOP参数 top - 01:06:48 up  1:22,  1 user,  load average: 0.06, 0.60, 0.48Tasks:  29 total,   1 running ...