Java数据库

一.数据模型

数据库

表--->数据

二.sql 基础语法

1.SQL语句可以单行或多行书写,以分号结尾

2.SQL语句可以使用空格/缩进来增强语句的可读性

3.MySQL数据库的SQL语句不区分大小写

4.- 单行注释:-- 注释内容 或 # 注释内容(MySQL特有)

  • 多行注释: /* 注释内容 */

三.sql 分类

1.DDL

Data Definition Language数据定义语言,用来定义数据库对象(数据库,表,字段)

2.DML

Data Manipulation Language数据操作语言,用来对数据库表中的数据进行增删改

3.DQL

Data Query Language 数据查询语言,用来查询数据库中表的记录

4.DCL

Data Control Language数据控制语言,用来创建数据库用户、控制数据库的访问权限

四.DDL

1.0数据库

查询所有数据库--->show databases;

查询当前数据库--->select database();

创建数据库--->create database if not exists 数据库名;

使用数据库--->use 数据库名 ;

删除数据库--->drop database if exists 数据库名 ;

2.0表
1.创建

create table 表名()

2.修改

<1.添加字段:alter table 表名 add 字段名 类型(长度) comment 注释 约束;

<2.修改字段类型:alter table 表名 modify 字段名 新数据类型(长度);

<3.修改字段名和字段类型:alter table 表名 change 旧字段名 新字段名 类型 (长度) comment 注释 约束;

<4.删除字段:alter table 表名 drop column 字段名;

<5.修改表名: rename table 表名 to 新表名;

3.删除

<1.删除表:drop table if exists 表名;

<2.在删除表时,表中的全部数据也会被删除。

4.查询表信息

<1.查询当前数据库所有表 show tables;

<2.查看指定表结构 desc 表名 ;

<3.查询指定表的建表语句 show create table 表名 ;

5.字段类型
1.数值类型

tinyint小整数值(1字节)

int大整数值(4个字节)

bigint8字节正数

double双精度浮点数值double(5,2)最长五位,其中两位小数,最大值是999.99

unsign 声明一个字段为无符号

2.字符类型

char定长字符串(需要指定长度)浪费空间,但是相对效率高

varchar变长字符串(需要指定长度)节约空间,效率稍低

3.日期类型

date年月日

datetime年月日时分秒

6.约束

<1.非空约束 限制该字段值不能为null not null

<2.唯一约束 保证字段的所有数据都是唯一、不重复的 unique

<3.主键约束 主键是一行数据的唯一标识,要求非空且唯一 primary key (auto_increment自增)

<4.默认约束 保存数据时,如果未指定该字段值,则采用默认值 default

<5.外键约束 让两张表的数据建立连接,保证数据的一致性和完整性 foreign key

五.DML

1.添加数据(INSERT)

<1.向指定字段添加数据insert into 表名 (字段名1, 字段名2) values (值1, 值2);

<2.全部字段添加数据insert into 表名 values (值1, 值2, ...);

<3.批量添加数据(指定字段)insert into 表名 (字段名1, 字段名2) values (值1, 值2), (值1, 值2);

<4.批量添加数据(全部字段)insert into 表名 values (值1, 值2, ...), (值1, 值2, ...);

2.修改数据

(UPDATE)update 表名 set 字段名1 = 值1 , 字段名2 = 值2 , .... where 条件 ;

3.删除数据

(DELETE)delete from 表名 where 条件 ;

相关推荐
独泪了无痕13 小时前
探索Pinyin4j-Java中的拼音转换利器
java·后端
道尔柯南14 小时前
C++ string 类详解:从常用接口到深拷贝,彻底掌握字符串处理
android·java·c++
Nturmoils14 小时前
集中式与分布式怎么选:从订单读写看 KingbaseES 的架构边界
数据库
xiaomuzuirenzhen15 小时前
大专电子商务从事电商运营分析师需要考证吗?
大数据·数据库
kingx315 小时前
Bugku 3122 谷歌小恐龙题解:纯离线逆向 Vault 的 AES-GCM 加密资源(附 Python 解密器)
java·逆向·ctf·bugku·aes-gcm
翔云12345617 小时前
RocksDB中,客户端每写入一次数据,需要访问几次磁盘
运维·数据库·mysql
DevOpenClub17 小时前
职教高考控制线 API:招生类别枚举、筛选与空分数含义
java·数据库·高考
露天赏雪18 小时前
第3篇:Sentinel熔断降级实战:大模型接口抖动时的服务兜底方案
java·开发语言·人工智能·spring boot·spring·servlet·sentinel
天天被压力18 小时前
【A股分钟级高频数据完全手册 #06】北交所分钟级数据接口:京市股票Pro版最新分时
java·人工智能·python
GeW18 小时前
新质生产力路线图解读:数据库性能优化与Linux调优专场
linux·数据库