Java学习-数据库DB

一、概述:
在这里插入图片描述
1.数据库(DateBase,DB):数据库就是存储数据的仓库,其本质是一个文件系统,数据按照特定的格式将数据存储起来,用户可以对数据库中的数据进行增加,修改,删除及查询操作。
2.数据库管理系统(DataBase Management System,DBMS):指一种操作和管理数据库的大型软件,用于建立、使用和维护数据库,对数据库进行统一管理和控制,以保证数据库的安全性和完整性。用户通过数据库管理系统访问数据库中表内的数据。
3.表:数据库中以表为组织单位存储数据,表中的称为记录称为字段
4.表数据:表类似我们的Java类,每个字段都有对应的数据类型。
在这里插入图片描述
5.常见的DBMS:MYSQL、Oracle、DB2、SQLServer、SyBase、SQLite

二、MySQL
1.安装

  • MySQL安装:不介绍
  • 图形化工具: mysql-front、SQLyog

2.SQL语句

  • 概念:结构化查询语言(Structured Query Language)简称SQL,是关系型数据库管理系统都需要遵循的规范;不同的数据库生产厂商都支持SQL语句,但都有各自的特有内容。

  • 分类
    1)DDL(Data Definition Language):用来定义数据库中的对象:数据库、表、列等,关键字:create,alter,drop, show等;
    2)DML(Data Manipulation Language):用来对数据库中表的记录进行更新关键字:insert,delete,update等;
    3)DCL(Data Control Language):用来定义数据库的访问权限和安全级别,及创建用户;
    4)DQL(Data Query Language):用来查询数据库中表的记录,关键字:select,from,where等;

  • 通用语法
    1)不区分大小写,关键字建议使用大写;
    2)可以单行或多行书写,以分号结尾;
    3)可以使用/**/的方式完成注释;
    4)数据类型如下图
    在这里插入图片描述

  • DDL示例

--------------------------------------------------DDL操作 数据库---------------------------------------------------
#创建数据库:create database 数据库名;
CREATE DATABASE db1216;
#指定字符集创建数据库:create database 数据库名 character set 字符集;
CREATE DATABASE db121601 CHARACTER SET utf8;

#查看MySQL服务器中的所有的数据库:show databases;
SHOW DATABASES;
#查看某个数据库的定义的信息:show create database 数据库名;
SHOW CREATE DATABASE db1216;

#删除数据库:drop database 数据库名称;
DROP DATABASE db121601;

#查看正在使用的数据库:select database();
SELECT DATABASE();

#切换数据库:use 数据库名;
USE db1216;

----------------------------------------------------DDL操作 表----------------------------------------------------
/*创建表
create table 表名(
字段名 类型(长度) [约束],
字段名 类型(长度) [约束],
   ...
);
*/
CREATE TABLE person(
	pid INT PRIMARY KEY,
	pname VARCHAR(30),
	pgender VARCHAR(30)
);
CREATE TABLE animal(
	aname VARCHAR(20),
	aage INT,
	asex VARCHAR(30)
);

#修改表名:rename table 表名 to 新表名;
RENAME TABLE animal TO animal01;

#删除表:drop table 表名;
DROP TABLE animal01;

#查看数据库中的所有表:show tables;
SHOW TABLES;
#查看表详细信息:desc 表名;
DESC person;

----------------------------------------------------DDL操作 列----------------------------------------------------
#添加列:alter table 表名 add 列名 类型(长度) [约束];
ALTER TABLE person ADD page INT;
ALTER TABLE person ADD psex VARCHAR(30);

#删除列:alter table 表名 drop 列名;
ALTER TABLE person DROP pgender;

#修改列名:alter table 表名 change 旧列名 新列名 类型(长度) 约束;
ALTER TABLE person CHANGE psex pgender VARCHAR(30);
#修改列的类型长度及约束:alter table 表名 modify 列名 类型(长度) 约束;
ALTER TABLE person MODIFY pgender VARCHAR(30);
#修改表的字符集:alter table 表名 character set 字符集;(一般不修改)
ALTER TABLE person CHARACTER SET utf8;
  • 示例
----------------------------------------------------DML操作 表----------------------------------------------------
#向表中插入某些字段:insert into 表 (字段1,字段2,字段3..) values  (值1,值2,值3..);
INSERT INTO person (pid,pname) VALUES (02,'小华');
INSERT INTO person (pid,pname,page,psex) VALUES (01,'小明',20,'男');
#向表中插入所有字段:insert into 表 values (值1,值2,值3..);
INSERT INTO person VALUES (03,'小红',21,'女');

#删除所有记录:truncate table 表名;
TRUNCATE TABLE person; 
DELETE FROM person;
#删除指定记录:delete from 表名 [where 条件];
DELETE FROM person WHERE pname = '小华';

#修改所有记录的指定字段:update 表名 set 字段名=值,字段名=值,...;
UPDATE person SET page = 18,psex = '男';
#修改符合条件记录的指定字段:update 表名 set 字段名=值,字段名=值,... where 条件;
UPDATE person SET psex = '女' WHERE pname = '小红';

猜你喜欢

转载自blog.csdn.net/Jagger_Lin/article/details/85012783