首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

MySQL常用基础 - 小白必看

if not exists 数据库名 (判断数据库是否存在,不存在则创建) 3、create database if not exists 数据库名 charset =字符编码 (2的基础加上数据库的字符编码...值,字段名=值,字段名=值.....where 条件; -- 指定修改 三:约束 概念:实际就是中数据的限制条件 作用:设计的时候加入约束的目的,就是为了保证中的记录完整性和有效性 约束分类:...主键约束相当于唯一约束+非空约束的组合,主键约束的列不允许重复,也不允许出现空值 每个最多允许一个主键 主键约束的关键字:primary key 当创建主键的约束的时候,系统会默认在所在的列和列组合上建立对应的唯一索引...,中间至少有两个外键,分别指向原来两个的主键 多表联合查询 介绍:多表查询就是同时查询两个或两个以上的,因为有时候用户查看数据的时候,需要显示的数据来自于多张 多表查询的分类: 1,交叉连接查询...A inner join B on 条件;(MySQL中,inner可以省略) 3,外连接查询:关键字(outer join) 左外连接:left outer join 右外连接:right outer

1.2K30
您找到你想要的搜索结果了吗?
是的
没有找到

第37次文章:数据库基本语法

二、修改 1、修改单的记录 update 1 别名 连接类型 join 2 别名 on 连接条件 set 字段=值,字段=值 【where 筛选条件】; 2、修改多表的记录【补充】 (1)sql92...对比单修改和多表修改,我们可以发现,不同点就在于多表中有一个多表连接,连接语法与我们dql语言中使用的类似。...数据库的命名以及字符集等等属性设置,一般创建的初始时就需要被设置好。以后的运维过程中基本也不会有什么变动,可能变化的主要就是数据库的字符集。...比如学生的专业编号 3、添加约束 (1)添加约束的时机 创建时 修改时 (2)约束的添加分类 列级约束:六大约束语法都支持,但是外键约束没有效果 约束:除了非空、默认,其他的都支持 4、案例...#一、创建时添加约束 #1、添加列级约束 /* 语法 直接在字段名和类型后面追加 约束类型即可。

1.2K10

Mysql数据库2

约束: 主键约束: primary key //一般后边还会写上auto_increment 唯一约束: unique 非空约束: not null* 多表约束:* 外键约束: foreign....一对一的关系: 一个公司只能对应一个注册地址, 一个注册地址只能对应一个公司.多表原则一对多的建原则:* "多"的一方创建一个字段, 作为外键, 指向"一"的一方的主键.多对多的建原则:*...需要创建第三张(中间), 中间中至少需要有两个字段, 分别作为外键指向多对多双方的主键.一对一的建原则:* 唯一外键对应.多表查询连接查询交叉连接: //了解 select * from...join B on 条件; 内连接和外连接的区别: 内连接: 查到的是 两个的交集....all: 必须比给定的所有值都要大(小).事务 概述: 事务指的是逻辑的一组操作, 组成这组操作的各个逻辑单元要么全部都成功, 要么全失败.

62930

MySQL之多表查询

阅读目录 一 多表联合查询 二 多表连接查询 三 复杂条件多表查询 四 子语句查询 五 其他方式查询 六 SQL逻辑查询语句执行顺序(重点) 七 外键约束 八 其他约束类型 九 之间的关系.../delete操作 CASCADE update/delete记录时,同步update/delete掉子表的匹配记录 SET NULL update/delete记录时,将子表匹配记录的列设为...    2.主键约束  用于约束中的一行,作为这一行的标识符,一张中通过主键就能准确定位到一行,因此主键十分重要。...约束关系为:左foreign key字段 添加唯一(unique)约束, 对应右 关联字段. 或者:右foreign key字段 添加唯一(unique)约束, 对应右 关联字段....通过在从的外键字段添加唯一约束(unique)来实现一对一关系. ?

8.5K120

MySQL数据查询之多表查询

/delete操作 CASCADE update/delete记录时,同步update/delete掉子表的匹配记录 SET NULL update/delete记录时,将子表匹配记录的列设为...null (要注意子表的外键列不能为not null) 约束类型详解 (4)建议:1.如果需要外键约束,最好创建同时创建外键约束.      2.如果需要设置级联关系,删除时最好设置为 SET...2.主键约束 用于约束中的一行,作为这一行的标识符,一张中通过主键就能准确定位到一行,因此主键十分重要。...约束关系为:左foreign key字段 添加唯一(unique)约束, 对应右 关联字段. 或者:右foreign key字段 添加唯一(unique)约束, 对应右 关联字段....通过在从的外键字段添加唯一约束(unique)来实现一对一关系.

8.1K20

N天爆肝数据库——MySQL(3)

//视图 CREATE 创建数据库/ !...: 概念 约束是作用于中字段的规则,用于限制存储中的数据。...分类: 非空约束:NOT NULL 限制该字段的数据不能为null 唯一约束: UNIQUE 保证该字段的所有数据都是唯一、不重复的 主键约束:PRRIMARY KEY 主键是一行数据的唯一标识,要求非空且唯一...多表查询 概述:指从多张中查询数据 笛卡尔积:多表查询时,需要消除无效的笛卡尔积 分类 连接查询 内连接:相当于查询A,B交集部分数据 外连接 左外连接:查询左所有数据,以及两张交集部分数据...[OUTER]JOIN2 ON条件...; 相当于查找2(右)的所有数据,包含1和2交集部分的数据 多表查询-自连接 语法 SELECT 字段列表 FROM A 别名A JOIN A

16920

【MySQL】多表练习、查询以及多表的关系

且这些的数据之间存在一定的关系,接下来我们将在单的基础,一起学习多表方面的知识。 2....多表创建流程 设计:设计相关的多个创建并设置主外键关系: 方式一:创建时设置多张之间的关系; 方式二:创建之后,再设置之间的关系 3....一对一关系:(了解) 实际的开发中应用不多.因为一对一可以创建成一张.如果非要设计成一对一的关系,多半是为了解耦,提高灵活度.如QQ号跟QQ信息详情,会员信息跟用户信息 二、多表入门案例...外键约束声明: 语法1:FOREIGN KEY (自己列名) REFERENCES 主表名 (主表列); 创建的时候 直接在建表语句中添加上述格式 语法2:alter table 从 add [...一对一关系:(了解) 实际的开发中应用不多.因为一对一可以创建成一张. 两种建原则: 外键唯一:主表的主键和从的外键(唯一),形成主外键关系,外键唯一unique。

2.5K20

PostgreSQL概述

该阶段中,PostgreSQL查询引擎将完成对公共表达式的优化,子链接的提,对JOIN/IN/ NOT IN的优化处理(进行Semi-Join、Anti-Semi-Join处理等),Lateral...不同方式所构建的查询访问路径的代价不尽相同,例如,执行多表JOIN操作时,不同的JOIN顺序产生的查询访问路径不同,而这直接导致了查询访问路径中的中间元组规模的不同;同时,关系索引的有无也将影响查询访问路径的代价...函数pull_up_sublinks中,PostgreSQL确定子链接满足SEMI-JOIN转换的条件后,分别由convert_ANY_sublink_to_join函数及convert_EXISTS_sublink_to_join...完成对查询语句中涉及的各个基的物理参数和约束条件的设置后,查询引擎将考察各个基所能形成的连接关系。...PostgreSQL查询引擎系统实现又有什么值得我们学习的地方呢?带着种种的疑问,打开《PostgreSQL查询引擎源码技术探析》开始我们的查询引擎内核分析之旅吧。

2.2K21

MySQL数据库操作教程

约束是为了保证数据的完整性和一致性 --对一个数据列建立的约束,就是列级约束 --对多个数据列建立的约束,就是约束 --列级约束既可以列定义时声明,也可以列定义后声明, --约束只能在列定义后声明...--唯一约束:UNIQUE KEY --唯一约束可以保证记录的唯一性,且唯一约束字段可以为空 --每张数据库可以存在多个唯一约束 CREATE TABLE users(sex ENUM('1','...约束是为了保证数据的完整性和一致性 --对一个数据列建立的约束,就是列级约束 --对多个数据列建立的约束,就是约束 --列级约束既可以列定义时声明,也可以列定义后声明, --约束只能在列定义后声明...KEY); --唯一约束:UNIQUE KEY --唯一约束可以保证记录的唯一性,且唯一约束字段可以为空 --每张数据库可以存在多个唯一约束 CREATE TABLE users(sex ENUM...SET tb1_att = tb2_id; --tb1内连接tb2,若tb1_att=tb2_att,那么设置tb1_att为tb2_id 2.多表创建写入 若是没有创建,那么直接在创建的时候写入数据

4.8K10

17期-什么是MySQL数据库?看这一篇干货文章就够了!

让我来整理一张思维导图: 细节掌握: 安装配置,常用命令,操作数据库; 整型与浮点型,日期时间型与字符型; 创建与查看数据库,修改数据库,删除数据库; 非空约束,主键约束唯一约束,默认约束,外键约束...结构: 图书(图书编号book_id,类别编号book_category_id,书名book_name,作者author) mysql中常用的几种约束类型: 约束类型 非空约束 主键约束 唯一约束...唯一约束要求该列唯一,允许为空,唯一约束可以确保一列或者几列不出现重复值。...语法规则: 列名 数据类型 unique [constraint ] unique() 创建时添加唯一约束 CREATE TABLE bookinfo( book_id INT...对于处理巨大数据量的数据拥有很好的性能 innodb存储引擎支持外键完整性约束 innodb被用在众多需要高性能的大型数据库站点 设置存储引擎: 设置服务器的存储引擎 配置文件my.ini中的mysqld

1.3K10

java核心技术第二篇之数据库SQL语法

方式二:创建时,constraint约束区域,声明指定字段为主键: ?格式:[constraint 名称] primary key (字段列表) ?...方式2:创建时,约束区域,声明唯一: CREATE TABLE Persons ( Id_P int, LastName varchar(255) NOT NULL,...4).删除唯一约束: ALTER TABLE 名 DROP INDEX 名称; 如果添加唯一约束时,没有设置约束名称,默认是当前字段的字段名 5).主键与唯一约束的区别: 主键:代表:唯一...、非空;一个只能有一个主键; 唯一:只代表:唯一;可以有多个NULL值;一个可以有多个字段被设置为唯一约束; 5).默认约束:default 值; 1).作用:可以设置某列的默认值,添加数据时...(cid); c, 通过sql语句能够建立多表及其关系 创建的外键,并且创建外键约束

1K20

什么是MySQL数据库?看这一篇干货文章就够了!

细节掌握: 安装配置,常用命令,操作数据库; 整型与浮点型,日期时间型与字符型; 创建与查看数据库,修改数据库,删除数据库; 非空约束,主键约束唯一约束,默认约束,外键约束; 管理工具:MySQL...结构: 图书(图书编号book_id,类别编号book_category_id,书名book_name,作者author) mysql中常用的几种约束类型: 约束类型 非空约束 主键约束 唯一约束...image 主键约束 主键约束:要求主键列的数据唯一,并且不允许为空,主键能够唯一地标识中的一条记录。...image 唯一约束 唯一约束要求该列唯一,允许为空,唯一约束可以确保一列或者几列不出现重复值。...对于处理巨大数据量的数据拥有很好的性能 innodb存储引擎支持外键完整性约束 innodb被用在众多需要高性能的大型数据库站点 设置存储引擎: 设置服务器的存储引擎 配置文件my.ini中的mysqld

2.2K30

day05_MySQL学习笔记_02

确保数据的完整性 = 创建时给中添加约束     完整性的分类:     > 实体完整性     > 域完整性     > 引用完整性   ----------------------------...答:创建时给添加约束。     ...注意:MySQL唯一约束下可以允许有多个null值,Oracle、SQL Server 唯一约束下不可以有多个null值。       ...(字段);         中修改:constraint PK_字段 primary key(字段),         中修改:字段 字段类型 primary key,     --唯一约束 UK...设计从可以有两种方案:         方式1:t_card中添加外键列(相对t_user),并且给外键添加唯一约束;即:字段 字段类型 unique,         方式2:给t_card的主键添加外键约束

2.1K20

PostgreSQL 基础与实践

数据与数据库概述 数据 首先,数据其实本质是一种事实或者观察到的结果,是对客观事务的逻辑的归纳总结,是信息的一种表现形式和载体。...,每张中的主键字段不能为空且不能重复,这主要是指中的数据都可以被唯一区分。...--- 创建时对字段进行唯一性的约束 CREATE TABLE person ( id INT NOT NULL auto_increment PRIMARY KEY, name VARCHAR... SQL 中,我们可以使用 JOIN 关键字来实现联查询,使用 LEFT JOIN 关键字来实现左联查询,使用 RIGHT JOIN 关键字来实现右联查询。...SELECT * FROM person LEFT JOIN car USING (car_id); 约束 CONSTRAINT 约束是用来限制数据中的数据的,我们可以通过以下命令来添加约束: ALTER

1.2K20

Mysql总结

name,boyName from beauty,boys; SQL92语法 等值连接 ①多表等值连接的结果为多表的交集部分 ②n连接,至少需要n-1个连接条件 ③多表的顺序没有要求 ④一般需要为起别名...2 别名 where 连接条件 and 筛选条件 Sql199语法 # 多表删除 delete 1的别名,2的别名 from 1 别名 inner|left|right join...create table 名( 字段名 字段类型 约束 ) 创建时添加约束 直接在字段名和类型后面追加 约束类型即可 create table stuinfo( id INT...); 主键和唯一的对比 外键的特点 要求在从设置外键关系 从的外键列的类型和主表的关联列的类型要求一致或兼容,名称无要求 主表的关联列必须时一个key(一般是主键或者唯一) 插入数据时,先插入主表...MODIFY COLUMN id INT PRIMARY KEY; #②约束 ALTER TABLE stuinfo ADD PRIMARY KEY(id); #添加唯一 #①列级约束

3.9K10

Web-第六天 MySQL回顾学习

2.5.4.1 添加唯一约束 方式1:创建时,字段描述处,声明唯一: CREATE TABLE Persons ( Id_P int UNIQUE, LastName varchar(255) NOT...NULL, FirstName varchar(255), Address varchar(255), City varchar(255) ) 方式2:创建时,约束区域,声明唯一: CREATE...注意:不插入该字段时 使用默认值 2.5.6 外键约束FOREIGN KEY FOREIGN KEY 表示外键约束,将在多表中学习 2.6 创建加入约束示例: id 主键自增长 username 字符串...且这些的数据之间存在一定的关系,接下来我们将在单的基础,一起学习多表方面的知识。 ?...4.2.3 一对一关系:(了解) 实际的开发中应用不多.因为一对一可以创建成一张. 两种建原则: 外键唯一:主表的主键和从的外键(唯一),形成主外键关系,外键唯一unique。

79620

热饭面试复习:【sql相关】-高级 (

创建数据库/ create database 数据库名 create table 名 ( 字段1 varchar(255) 约束, 字段2 类型 约束, primary key (字段1) ......) 约束 not null 不能为null unique 唯一 primary key 主键 foreign key 外键 default 默认 check 选择 删除数据库/ drop table... as 新多表链接 join on 内链接 inner join select * from 1 inner join 2 on 1.字段1 = 2.字段2 左右链接 left/right...2 on 1.字段1=2.字段2 outer join 可以用在左右全中,如left outer join,可以返回不包含的内容 join去重 on 后加where 如 select...index create index 索引名 on 名 (字段名-可不写) 创建不允许值重复的唯一索引 create unique index 索引名 on 名 删除索引 drop index

17730

理解PG如何执行一个查询-1

树底部,Seq Scan操作只是从中读取一行并将改行返回给父节点。Seq Scan操作扫描整个后,左侧的Sort操作可以完成。左侧的Sort完成后,Merge Join算子将评估其右孩子。...当2个Sort操作都完成时,将执行Merge Join运算,生成最终的结果集。到目前位置,执行计划种已经看到了3个查询执行的算子。PG目前有19个查询算子。让我们更详细地看看每个。...对于中每一行,Seq Scan会执行查询约束(WHERE子句),如果满足约束,则将需要的列添加到结果集中。 注:查询约束:可能不会为输入集中的每一行评估整个WHERE子句。...PostgreSQL 仅评估适用于给定行(如果有)的子句部分。对于单SELECT ,将评估整个WHERE子句。对于多表连接,仅评估适用于给定行的部分。...输入集必须按列排序,并且列必须唯一

2K20
领券