其中,主键列指定了 PRIMARY KEY 约束,强制该列的值在表中唯一,并且使用 AUTO_INCREMENT 关键字,表示该列的值会自动递增生成。
上次小编安装好了MySQL以及Navicat Premium 15,于是小编决定先学习MySQL基础啦。可能会有小伙伴会问现在又用不到,学它干嘛,很多东西的价值并不是在当时就能体现出来的,它必然是一个长期的过程。就如读书一样,虽然小编对其它文学书籍的阅读少了许多,但还是会时不时看看,总觉得阅读能让人摆脱些困惑,哈哈哈,扯远了。
表的约束,实质上就是用数据类型去约束字段,但是数据类型的约束手法很单一,比如,我们在设置身份证号这个字段,数据类型唯一起的约束是它属于char类型或者varchar类型,不能是浮点型也不能是日期时间类型,但是这样还不够,身份证号需要有唯一性,是每个合法公民的唯一标识。因此需要额外增加一些手段去进行约束,以便更好的保证数据的合法性。
真正约束字段的是数据类型,但是数据类型约束很单一,需要有一些额外的约束,更好的保证数据的合法性,从业务逻辑角度保证数据的正确性。比如有一个字段是email,要求是唯一的。表中一定要有各种约束,通过约束,让我们未来插入数据库表中的数据是符合预期的。约束的本质是通过技术收到逼迫程序员插入正确的数据,反过来,站在mysql的视角,凡是插入进来的数据,都是符合数据约束的。约束的最终目标:保证数据的完整性和可预期性所以需要更多的约束。 表的约束很多,这里主要介绍如下几个: null/not null,default, comment, zerofill,primarykey,auto_increment,unique key 。
结构语言分类 DDL(数据定义语言) create drop alter 创建删除以及修改数据库,表,存储过程,触发器,索引.... DML(数据操作语言) insert delete update 用来操作数据库中的数据 DQL(数据查询语言) select 用来查询数据库中的数据 DCL(数据控制语言) grant(授权) revoke(撤销) TCL(事务控制语言) begin savepoint (设置回滚点) rollbac
视图(view)是一种虚拟存在的表,是一个逻辑表,本身并不包含数据。作为一个select语句保存在数据字典中的。通过视图,可以展现基表的部分数据;视图数据来自定义视图的查询中使用的表,使用视图动态生成。
4. 如果一个关系中的属性或属性组并非该关系的主键,但它是另一个关系的主键,则称其为该关系的 。
win10下MySQL安装教程(MySql-8.0.26超级详细)_丨汀、的博客-CSDN博客
NO ACTION:在父表进行更新/删除时,首先检查记录是否存在外键,存在则不允许删除/更新。(与RESTRICT行为一致)
理解:约束是用于限定表的字段的,为了保证数据表的完整性 常见约束:★ (not null)NOT NULL 非空:用于限定某字段为必填项,比如姓名、id等 (default)DEFAULT 默认:用于限定某字段如果没有显式的插入值,默认存储的选项,比如性别、成绩等 (primary key)PRIMARY KEY主键:用于限定某字段是唯一的、非空的,比如学号 (unique)UNIQUE 唯一:用于限定某字段是唯一的,可以为空,比如:座位号 (check)CHECK检查:用于限定某字段必须满足指定条件,比如 check (gender = ‘男’ or gender =‘女’) 但是:mysql不支持 (foreign key)FOREIGN KEY外键:用于限定两个表的关系,比如学员信息表和专业表通过专业编号关联 【面试题】主键和唯一的对比 主键:唯一、非空、一个表至多有一个主键 唯一:唯一、可以为空、一个表可以有多个唯一键
数据库不论在基础知识学习还是真实企业业务场景中都很常用,也有很多调侃说日常工作总是离不开 CRUD,熟练主流关系型与数据库的使用是一个开发者基本的操作。本文将在 MacOS 系统下对 MySQL 这个流行的关系性数据库的基础知识与相关操作进行整理,以便于查阅。
上篇咱们介绍了MySQL的基本情况和建库建表语句,当然必不可少的增删改查中的增删改也一并介绍了一下,此处再次强调语句,删库需谨慎,三思而后行。
打开MySQL:net start mysql 关闭MySQL:net stop mysql
表的约束:表中一定要有各种约束,通过约束,让我们未来插入数据库表中的数据是符合预期的。约束本质是通过技术手段,倒逼用户,插入正确的数据。反过来,在 mysql 角度,凡是插入进来的数据,都是符合数据约束的!约束的最终目的就是保证数据的完整性和可预期性。因此我们需要更多的约束条件!
Comparison among different ways of storing data:
mysql安装教程见博客:MySQL 7.7.25 图文安装教程(Win10) 本篇博客以学生表、课程表以及学生-课程表为例,讲解mysql常用的建表语句。
在为字段添加约束时,我们只需要在字段之后加上约束的关键字即可,需要关注其语法。我们执行上面的SQL把表结构创建完成,然后接下来,就可以通过一组数据进行测试,从而验证一下,约束是否可以生效。
支持的范围是1000-01-01 00:00:00 ~ 9999-12-31 23:59:59
Java 中创建对象: Student s = new Student(1, “张三”) 存在内存中 学习了 Java IO 流:把数据保存到文件中。
1.下载zip安装包,解压,重命名为mysql,移动到你想要的地方2.配置环境变量把bin目录加到path变量中去...
数据查询语言(Data Query Language, DQL)是SQL语言中,负责进行数据查询而不会对数据本身进行修改的语句,这是最基本的SQL语句。
上节课我们给大家介绍了数据库的基本概念,具体请回顾 打开数据库的大门——SQL。本节课我们以关系型数据库MySQL为例,跟大家介绍关系型数据库的基本用法。
– 查询姓名中包含德的人 SELECT * FROM student WHERE NAME LIKE ‘%德%’;
一、数据库管理 1.1查询所有数据库 mysql> show databases; +--------------------+ Database +--------------------+ information_schema-- mysql元数据,基础数据 mysql--mysql配置数据库,其中包含用户信息。(用户名和密码,权限管理) performance_schema--mysql数据库软件的运行数据,日志信息,性能数据 test--测试数据库。空的 +-------------------
假设要设计一个在线约会网站,用户信息表有很多列,包括国家、地区、城市、性别、眼睛颜色等等。网站必须支持上面这些特征的各种组合来搜索用户,还必须允许根据用户的最后在线时间、其他会员对用户的评分等对用户进行排序并对结果进行限制。如何设计索引满足上面复杂的需求呢?
个人主页:天寒雨落的博客_CSDN博客-C,CSDN竞赛,python领域博主
在数据库中对表中的数据进行限制,保证数据的正确性、有效性和完整性。一个表如果添加了约束,不正确的数据将无法插入到表中。约束在创建表的时候添加比较合适。
数据库(DataBase,DB):指长期保存在计算机的存储设备上,按照一定规则组织起来,可以被各种用户或应用共享的数据集合。(文件系统)
当前创建的 数据库 testForTable 字符集和校验集分别为 utf8 和 utf8_general_ci,这是由配置文件中的默认编码集决定的
一、数据类型 MySQL中定义数据字段的类型对你数据库的优化是非常重要的。 MySQL支持多种类型,大致可以分为三类:数值、日期/时间和字符串(字符)类型。 1)字符类型:char varchar text blob char:定长 varchar:可变长度 2)数值类型:int bigint float decimal int: int/integer bigint: long/BigInteger float: 成绩,不适合存储
1、减少数据冗余:(数据冗余是指在数据库中存在相同的数据,或者某些数据可以由其他数据计算得到),注意,尽量减少不代表完全避免数据冗余;
约束是一种限制,它通过对表的行或列的数据做出限制,来确保表的数据的完整性、唯一性。
数据库提供一个存储空间用于存放各种数据(其中包括整型、文本、小数、日期等),我们可以将数据库看作是一个存储数据的容器。
Redis系列到上一篇已经全部结束了,从本篇开始进入Mysql系列文章专题。本篇作为Mysql系列专题的开篇文章,主要是一文带大家大致了解什么是Mysql。本篇文章主要涉及的内容有:
DBMS 采用某种数据模型进行建模,提供了在计算机中表示数据的方式,其包括,数据结构、数据操作、数据完整性三部分。在关系模型中,通过关系表示实体与实体之间的联系,然后基于关系数据集合进行数据的查询、更新以及控制等操作同时对数据的更新操作进行实体完整性、参照完整性、用户自定义完整性约束。而在前期,通过关系代数和逻辑方式(关系演算)表示对关系操作的能力,而后出现了 SQL 语言,其吸纳了关系代数的概念,和关系演算的逻辑思想
-- 数据库的操作 -- 链接数据库 mysql -uroot -p mysql -uroot -pmysql -- 退出数据库 exit/quit/ctrl+d
-- 链接数据库 mysql -uroot -p mysql -uroot -pmysql
USE [数据库名]; 使用一个数据库 如果出现[数据库名] changed 则表明选择数据库成功
前言 历史考试选择题:黄花岗起义第一枪谁开的? A宋教仁 B孙中山 C黄兴 D徐锡麟,考生选C。 又看第二题:黄花岗起义第二枪谁开的? 考生傻了,就选了个B。 接着看第三题:黄花岗起义中,
类型后边可以加限定条件:primary key(主键)、not null(不能为空)、unique(唯一的)、foreign key(外键)、default(定义初值)、
alter table user_msg change user_nickname user_newname varchar(30) comment “用户昵称”;
存储数据的仓库. 其本质是一个文件系统,数据库按照特定的格式将数据存储起来,用户可以对数据库中的数据进行增加,修改,删除及查询操作。
比如 , 我们可以切换到 sys 这个系统数据库 , 并查看系统数据库中的所有表结构。
当前主要使用两种类型的数据库:关系型数据库、非关系型数据库,本部分主要讨论关系型数据库,对于非关系型数据库会在后面学习;
mysqld负责监听客户端的连接请求,处理SQL查询,管理数据库文件,以及与数据库相关的其他任务。
1. 减少数据冗余:(数据冗余是指在数据库中存在相同的数据,或者某些数据可以由其他数据计算得到),注意,尽量减少不代表完全避免数据冗余;
(一)完整性设计 方法一、在设计表时定义约束 删除数据库school,建立新数据库school1 drop database school; create database school; use school; 1.定义约束 create table Student( Sno char(9) primary key, /*主键约束 提示primary key */ Sname char(20) unique, /* 唯一约束 提示 unique */ Ssex cha
为啥学习MySQL呢?因为MySQL是最流行的关系型数据库管理系统之一,在web应用方面,MySQL是最好的软件。MySQL所使用的sql语言是用于访问数据库的最常用标准化语言。
领取专属 10元无门槛券
手把手带您无忧上云