存储数据的仓库,本质上就是存储数据的文件系统,方便我们管理数据 DBMS:是指一种操作和管理数据库的大型软件 实体:普通的一个java类,一个实体对应一张表 结构化查询语言,通过SQL语句来操作数据,实现对记录的增删改查 SQL是一套标准,所有的数据库厂商都实现了此标准;但是各自的厂商在此标准上增加了特有的语句,这部分内容称为方言 创建库,显示库,修改库,删除库操作 语法:use 数据库名; 语法:select database(); 创建表,显示表,修改表,删除表操作 常用的数据类型 克隆表 在企业开发时,我们会使用第三方客户端工具提高效率 语法:insert into 表名(列名1,列名2)values(值1,值2); 【列名和值的数据类型要对应】字符串类型可以使用单双引号 语法:insert into 表名 values(值1,值2); 蠕虫复制:作用是将一张表的记录,快速复制到另一张表 语法: 克隆表:create table stu like student; 数据迁移:insert into stu select * from student; 导入数据 关系运算符:大于(>)、小于(<)、等于(=)、不等于(!=)
数据库介绍
什么是数据库
数据库管理系统
实体和表关系
配置
SQL
概述
什么是SQL
CRUD:create创建、retrieve检索、update修改、delete删除SQL方言
SQL书写规范
–(所有数据库厂商支持)# 仅MySQL厂商支持
/* 注释内容* /SQL分类
SQL基础操作
DDL
操作数据库
语法:create database 数据库名;
语法:create database 数据库名 charset 字符集;
语法:show database;
语法:show create database 数据库名;
语法:alter database 数据库名 charset 新字符集;
语法:drop database 数据库名;进入/切换某一个具体的数据库
查看当前所在哪个数据库中
操作表
语法:create table 表名(列名 数据类型,列名 数据类型);
示例:
int: 整型
float:小数,浮点型
double:小数,浮点型
decimal:小数(保留精准度)
varchar:字符型,指定范围0~65535,容纳多少个字符,包含字母,符号,汉子
text:文本型
date:日期类型
datatime:日期时间类型
在创建表的时候,可以快速的指定另一张表的结构
语法:create table 新表 like 旧表;
2. R:查询
语法:show tables;
语法:show create table 表名;
*语法:desc 表名;
语法:alter table 表名 add 列名 数据类型;
语法:alter table 表名 modify 列名 新类型;
语法:alter table 表名 change 旧列名 新列名 新类型;
语法:alter table 表名 drop 列名;
语法:rename table 旧表名 to 新表名;
语法:drop table 表名;图形化工具
DML
添加记录
应用场景:数据的迁移
需求:创建一张新表,表结构与旧表一致,实现数据的快速迁移修改记录
删除记录
DQL简单查询(检索)
DQL条件查询
逻辑运算符:and (条件同时成立)、or(条件满足一个)、not(条件取反)
in 关键字(某一个列,查询多个值)
between关键字(范围查询) select … from 表名 where 列名 between 较小的值 and 较大的值
null值处理 :is null 函数,is not null 函数
like关键字(模糊匹配):select … from 表名 where 列名 like ‘通配符字符串’
_ 单个任意字符
% 多个任意字符练习整合
-- 直接创建数据库 CREATE DATABASE day18; -- 创建表 CREATE TABLE student( id INT, NAME VARCHAR(32), birthday DATE ); -- 添加记录 INSERT INTO student VALUES(1,'王健林','1997-2-10'); INSERT INTO student VALUES(5,'王健林',NULL),(6,'撒贝宁',NULL); -- 修改记录 UPDATE student SET birthday='1998-5-6' WHERE id=5; UPDATE student SET birthday='1994-5-9'WHERE id=6; -- 删除记录 DELETE FROM student WHERE id=1 ; -- 简单查询 -- 创建表 CREATE TABLE student1( id INT, NAME VARCHAR(20), chinese DOUBLE, english DOUBLE, math DOUBLE ); -- 插入记录 INSERT INTO student1(id,NAME,chinese,english,math) VALUES(1,'tom',89,78,90); INSERT INTO student1(id,NAME,chinese,english,math) VALUES(2,'jack',67,98,56); INSERT INTO student1(id,NAME,chinese,english,math) VALUES(3,'jerry',87,78,77); INSERT INTO student1(id,NAME,chinese,english,math) VALUES(4,'lucy',88,NULL,90); INSERT INTO student1(id,NAME,chinese,english,math) VALUES(5,'james',82,84,77); INSERT INTO student1(id,NAME,chinese,english,math) VALUES(6,'jack',55,85,45); INSERT INTO student1(id,NAME,chinese,english,math) VALUES(7,'tom',89,65,30); -- 查询表中所有学生的信息 SELECT *FROM student1; -- 查询表中所有学生的姓名和对应的语文成绩 SELECT NAME,chinese FROM student1; -- 查询表中学生姓名(去重) SELECT DISTINCT NAME FROM student1; SELECT DISTINCT NAME ,chinese FROM student1; -- 在所有学生数学分数上加10分特长分 SELECT NAME ,math+10 FROM student1; -- 统计每个学生的总分 SELECT NAME ,chinese+english+math FROM student1; -- 解决null问题 SELECT NAME ,chinese+IFNULL(english,0)+math FROM student1; -- 使用别名表示 SELECT NAME AS 姓名,(chinese+IFNULL(english,0)+math) AS 总分 FROM student1; -- DDL条件查询 CREATE TABLE student2 ( id INT, NAME VARCHAR(20), age INT, sex VARCHAR(5), address VARCHAR(100), math INT, english INT ); -- 插入记录 INSERT INTO student2(id,NAME,age,sex,address,math,english) VALUES (1,'马云',55,'男','杭州',66,78), (2,'马化腾',45,'女','深圳',98,87), (3,'马景涛',55,'男','香港',56,77), (4,'柳岩',20,'女','湖南',76,65), (5,'柳青',20,'男','湖南',86,NULL), (6,'刘德华',57,'男','香港',99,99), (7,'马德',22,'女','香港',99,99), (8,'德玛西亚',18,'男','南京',56,65); # 关系运算符 -- 查询math分数大于80分的学生 SELECT *FROM student2 WHERE math>80; -- 查询english分数小于或等于80分的学生 SELECT *FROM student2 WHERE english<=80; -- 查询age等于20岁的学生 SELECT *FROM student2 WHERE age=20; -- 查询age不等于20岁的学生 SELECT *FROM student2 WHERE age!=20; # 逻辑运算符 -- 查询age大于35且性别为男的学生(两个条件同时满足) SELECT *FROM student2 WHERE age>35 AND sex='男'; -- 查询age大于35或性别为男的学生(两个条件其中一个满足) SELECT *FROM student2 WHERE age>35 OR sex='男'; -- 查询id是1或3或5的学生 SELECT *FROM student2 WHERE id=1 OR id=3 OR id=5; -- in关键字 -- 再次查询id是1或3或5的学生 SELECT *FROM student2 WHERE id IN(1,3,5); -- 查询id不是1或3或5的学生 SELECT *FROM student2 WHERE id NOT IN(1,3,5); -- 查询english成绩大于等于77,且小于等于87的学生 SELECT *FROM student2 WHERE english>=77 AND english<=87; -- 查询英语成绩为null的学生 SELECT *FROM student2 WHERE english=NULL;-- null 六亲不认什么都没有 SELECT *FROM student2 WHERE english IS NULL; SELECT *FROM student2 WHERE english IS NOT NULL; # like模糊匹配 -- 查询姓马的学生 SELECT *FROM student2 WHERE NAME LIKE '马%'; -- 查询姓名中包含'德'字的学生 SELECT *FROM student2 WHERE NAME LIKE '%德%'; -- 查询姓马,且姓名有三个字的学生 SELECT *FROM student2 WHERE NAME LIKE '马__';
本网页所有视频内容由 imoviebox边看边下-网页视频下载, iurlBox网页地址收藏管理器 下载并得到。
ImovieBox网页视频下载器 下载地址: ImovieBox网页视频下载器-最新版本下载
本文章由: imapbox邮箱云存储,邮箱网盘,ImageBox 图片批量下载器,网页图片批量下载专家,网页图片批量下载器,获取到文章图片,imoviebox网页视频批量下载器,下载视频内容,为您提供.
阅读和此文章类似的: 全球云计算