Java web1(黑马)
java web
java web概念
什么是java web?
> web:全球广域网,也称为万维网,能够通过浏览器访问的网站。
> java web:是用java技术来解决相关web互联网领域的技术栈。
数据库
>数据库:1.存储数据的仓库,数据是有组织的进行存储。
2.英文:DataBase,简称DB。
>数据库管理系统:1.管理数据库的大型软件。如:MySQL,oracle
2.DataBase Management System,简称DBMS
>SQL: 1.英文:Structured Query Longuge,简称SQL,结构化查询语言。
2.操作关表型数据库的编程语言。
3.定义操作所有关系型数据库的统一标准。
注:关系型数据库是建立在关系模型基础上的数据库,简单说,关系型数据库是由多张能互相连接的二维表组成的数据
关系:
SQL
一、概念
SQL:1.结构化查询语言,一门操作关系型数据库的编程语言
2.对于同一需求,每一种数据库操作的方式可能会存在一些不一样的地方,我门称为“方言”
SQL通用语法:
1.SQL语句可以单行或多行书写,以分号结尾。
2.MySQL语不区分大小写,关键字建议使用大写。
3注释: 单行: -- 注释内容 或 #注释内容(MySQL特有)
多行: /*注释内容*/
二、分类
为了方便理解,根据功能区分
DDL :Data Definition Language,数据定义话言,用来定义数据库对象:数据库,表,列。
DML:Data Manipulation Language,数据操作语言,用来对数据库中表的数据进行增删改。
DQL:Data Query Language,数据查询语言,用来查询数据库中表的记录。
DCL:Data Control Language,数据控制语言,用来定义数据库的访问权限和安全级别及创建用户
1.DDL (操作数据库,表等)
--操作数据库
1.查询 SHOW DATABASES;
2.创建
·创建数据库 CREATE DATABASE 数据库名称;
·创建数据库(判断,如果不存在则创建)
CREATE DATABASE IF NOT EXISTS 数据名称;
3.删除
·删除数据库 DROP DATABASE 数据库名称;
·删除数据库 (判断,如果存在则删除)
DROP DATABASE IF EXISTS 数据库名称;
4.使用数据库
·查看当前使用的数据库
SELECT DATABASE( );
·使用数据库 USE 数据库名称;
--操作表列
1.查询表
·查询当前数据库下所有表名称 SHOW TABLES;
·查询表结构 DESC 表名称;
2.创建表
CREATE TABLE 表名(
字段名1 数据类型1,
字段名2 数据类型2,
......
字段名n 数据类型n
);
注:最后一行未尾,不能加逗号
3.删除表
·删除表 DROP TABLE 表名;
·删除表时判断表是否存在
DROP TABLE IF EXISTS 表名;
4.修改表
·修改表名 ALTER TABLE 表名 RENAME TO 新的表名;
·添加一列 ALTER TABLE 表名 ADD 列名 数据类型;
·修改教据类型 ALTER TABLE 表名 MODIFY 列名 新数据类型;
·修改列名和数据类型 ALTER TABLE 表名 CHANGE 列名 新数据类型;
·删除列 ALTER TABLE 表名 DROP 列名;
数据类型
2.DML (对表中的数据进行增删改)
1.添加数据
·给指定列添加数据
INSFRT INT0 表名(列名1,列名2,...) VALUES(值1, 值2,...);
·给全部列添加数据
INSERT INTO 表名 VALUES(值1,值2,...);
·批量添加数据
INSERT INTO 表名(列名1,列名2,...) VALUES(值1,值2,..),(值1,值2,..),(值1,值2,..),...;
INSERT INTO 表名(值1,值2,..),(值1,值2,..)...;
2.修改数据
·修改数据 UPDATE 表名 SET 列名1=值1,列名2=值2,….[WHERE 条件];
注意 :修改语句中如果不加条件,则将所有数据都修放!
3.删除数据
删除数据 DELETE FROM 表名 [WHERE 条件];
注:删除语句中如果不加条件,则将所有数据都删除!
3.DQL (对表中的数据进行查询)
查询语法
SELECT 字段到表
FRM 表名列表
WHERE 条件列表
GROUP BY 分组字段
HAYING 分组后条件
ORDER BY 排序字段
LIMIT 分页限定
1.基础查询
·查询多个字段
SELECT 字段列表 FROM 表名;
SELECT * FROM 表名; -- 查询所有数据
·去除重复记录
SELECT DISTINCT 字段列表 FROM 表名;
·起别名
AS: -- 可以省略,对列起别名
2.条件查询
·语法:SELECT 字段列表 FROM 表名 WHERE 条件列表;
·条件:

3.排序查询
·语法:SELECT 字段列表 FROM 表名 ORDER BY 排序字段名1[排序方式1],...;
·排序方式:
ASC 升序排列(默认值) DESC 降序排列
4.分组查询
>聚合函数
概念:将一列数据作为一个整体,进行纵向计算
语法:SELECT 聚合教名(列名) FROM 表名;
注:nul值不参与所有聚合函数运算
分类:
>分组查询
分组查询语法:SELELT 字段列表 FROM 表名 [WHERE 分组前条件限定] GROUP BY 分组字段名 [HAVING 分组后条件过滤];
5.分页查询
>分页查询语法:SELECT 字段列表 FROM 表名 LIMIT 起始索引,查询条目数;
>起始索引: 从0开始
计算公式:起始索引=(当前页码-1)*每页显示的条教
4.DCL (对数据库进行权限控制)
约束
概念:1.约束是作用于表中列上的规则,用于限制加入表的数据
2.约束的存在保证了数据库中数据的正确性、有效性和完整性
约束的分类
注:MySQL不支持检查约束
outo_increment 自动增长
添加约束语法:
-- 创建表时添加约束
CREATE TABLE 表名(
列高 数据类型 约束关键字,
....
);
外键约束:
1.添加约束(创建表时)
CREATE TABLE 表名(
列名 数据是型
ICONSTRAINTI [外键名称] FOREIGN KEY(外键列名) REFERENCES 主表(主表列名)
);
注:在创建表时应先创建主表,添加主表数据,在创从表,添加从表数据。
2.添加外健(创建完表后)
ALTER TABLE 表名 ADD CONSTRAINT 外键名称 FOREIGN KEY ( 外键字段名称)REFERENCES 主表名(主表列名称);
3.删除约束
ALTER TABLE 表名 DROP FOREIGN KEY 外键名称;