蓝旭春季培训第五周预习博客

数据库

介绍

数据库是一个有组织的数据集合,它按照数据结构来存储和管理数据。数据库管理系统(DBMS)负责对数据库进行统一的管理和控制,包括数据的存储、检索、更新和删除等操作。

类型

关系型数据库(RDBMS)
关系型数据库通过表格的形式来组织数据,每个表格包含一系列行(记录)和列(字段)。它们之间的数据通过关系进行连接,最常见的关系型数据库系统包括MySQL、Oracle、SQL Server和PostgreSQL等。
非关系型数据库(NoSQL)
非关系型数据库不依赖于传统的表格关系模型,它们更适合处理非结构化或半结构化数据。NoSQL数据库可以进一步分为几种类型,包括文档型数据库(如MongoDB)、键值存储(如Redis)、列族存储(如Cassandra)和图形数据库(如Neo4j)。

MySQL

基本操作

打开MySQL

//创建数据库
CREATE DATABASE database_name;
//删除数据库
DROP DATABASE database_name;
//使用数据库
USE DATABASE database_name;


数据库的建立->
在这里插入图片描述
建立表格,并进行基本操作处理->
在这里插入图片描述

IDEA链接数据库

![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/0973568e5c914d30994bdc1859b03feb.png

事务

数据库中的事务(transaction)是访问并可能操作各种数据项的一个数据库操作序列。这些操作要么全部执行,要么全部不执行,是一个不可分割的工作单位。事务由事务开始与事务结束之间执行的全部数据库操作组成。

事务的四大特性简称为ACID特性,包括:

原子性(Atomicity):事务是一个原子操作单元,其包含的各操作要么都做,要么都不做。如果事务在执行过程中出错,则全部回滚到事务开始前的状态,就像这个事务从未执行过一样。
一致性(Consistency):在事务开始之前和事务结束之后,数据库的完整性没有被破坏。这要求写入的数据必须完全符合所有的预设约束、触发器、级联回滚等。
隔离性(Isolation):数据库允许多个并发事务同时对其数据进行读写和修改能力,隔离性可以防止多个事务并发执行由于交叉执行而导致数据不一致。即一个事务内部的操作及使用的数据对其它并发事务是隔离的,并发执行的各个事务之间不能互相干扰。
持久性(Durability):也称永久性,指一旦事务提交,它对数据库中的数据的改变就应该是永久性的。接下来的其它操作或故障不应该对其执行结果有任何影响。这通常是通过将数据写入到持久化存储(如硬盘)来实现的。
这些特性保证了数据库在事务执行过程中的数据完整性和一致性,是数据库设计和实现中至关重要的部分,特别是在多用户、高并发的环境中。

JDBC

JDBC(Java Database Connectivity)是Java语言中用来执行SQL语句的API,它提供了Java应用与数据库之间的连接和操作机制。

基本操作

JDBC的基本使用步骤包括:

1.导入jar包,加载驱动:使用Class.forName()方法加载数据库驱动。
2. 建立连接:使用DriverManager.getConnection()方法建立与数据库的连接。
3. 创建执行SQL语句的对象:根据要执行的SQL语句的类型(如查询、更新等),使用连接对象创建相应的Statement对象或PreparedStatement对象。
4.执行SQL语句:使用Statement或PreparedStatement对象的execute()、executeQuery()或executeUpdate()方法执行SQL语句。
5. 处理结果集:如果执行的是查询语句,则处理返回的结果集;如果执行的是更新语句,则处理更新的记录数。
6. 关闭资源:使用完数据库连接后,需要关闭ResultSet、Statement和Connection对象,以释放资源。

导入jar包

在这里插入图片描述

import java.sql.*;

public class Main {
    public static void main(String[] args) {
        String diver="com.mysql.cj.jdbc.Driver";
        String url="jdbc:mysql://localhost:3306/ddz";
        String user="root";
        String password="*******";
        String sql = "SELECT * FROM employees";
        try {
            // 加载数据库驱动类
            Class.forName(diver);
            // 通过DriverManager.getConnection方法建立与数据库的连接
            Connection con= DriverManager.getConnection(url,user,password);
            // 创建Statement对象,用于执行SQL语句
            Statement stat= con.createStatement();
            // 执行SQL查询,并将结果存储在ResultSet对象中

            ResultSet res=stat.executeQuery(sql);
            while(res.next()){
                String id = res.getString("id");
                String name = res.getString("name");
                System.out.println(STR."ID: \{id}, Name: \{name}");
            }
            System.out.println("数据库获取成功!");
            res.close();
            stat.close();
            con.close();
        }catch (ClassNotFoundException e) {
            e.printStackTrace();
            System.out.println("MySQL JDBC Driver not found.");
        } catch (SQLException e) {
            e.printStackTrace();
            System.out.println("Connection Failed! Check output console");
        }
    }
}

运行结果:
在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值