MYSQL知识点记录-1
1、一个关系型表有一组命名的属性(列),以及一组元祖(行)。
有时列被称为域,行被称为记录,列与行的交集通常被叫做单元。
2、一个关系表必须符合某些特定条件,才能成为关系模型的一部分:
- 贮存在单元中的数据必须是原子的。
- 贮存在列下的数据必须具有相同数据类型。
- 每行是唯一的(没有完全相同的行)。
- 列没有顺序。
- 行没有顺序。
- 列有一个唯一性的名称。
3、允许数据操作或数据处理的主要语言是select、insert、update和delete。
允许数据定义或结构化处理的基本语句是create、alter和drop。
4、关系模型要求的最后一件事是两个基础的完整性原则:实体完整性原则、引用完整性原则。
- 主键是能唯一标识行的一列或一组列的集合。有时,多个列或多组列可以被当做主键。
- 由多个列构成的主键被称为连接键、组合键,或者更称为复合键。
- 剩余有可能被选为主键的列被叫做候选键或替代键。
- 外键是一个表中的一列或一组列,它们在其他表中作为主键而存在。一个表中的外键被认为是对另外一个表中主键的引用。
实体完整性原则:主键不能全部或部分地空缺或为空。
引用完整性原则:一个外键必须为空或者与它所引用的主键当前存在的值相一致。
5、结构化查询语言(SQL)是当今主要的查询语言,它主要用于管理主流类型的DBMS-关系型DBMS(RDBMS)。
6、MYSQL使用的SQL语言
6.1 表、列和数据类型
- 表示数据在一个MYSQL数据库中的存储机制。它包含一组固定的列。表中的列描述该表所跟踪的实体的属性,每个列都有一个名字及各自的特性。
- 列由两部分组成:数据类型和长度。
- 对于使用NUMERIC数据类型的列,可以指定列的小数位及经独特性,精度决定数值的有效位数。小数位表示数值的小数点位置。说明为NUMERIC(9,2)的列表示该列总共有9位数,其中2位数在小数点右边。缺省的数值精度为10位数。
6.2函数
- 函数是存储在数据库中的代码块。其差别在于函数可以把值返回调用程序。
- 你可以建立自己的函数,并在SQL语句中调用它们,就像执行Oracle提供的函数一样。
- 例如创建一个叫做MYSUB的函数来执行一个自定义的取子串操作,就可以在一个SQL命令中调用它:SELECT MUSUB(“this is a test”,6,2)
7、MYSQL数据处理
7.1MYSQL的数据
- MYSQL支持大量的列类型,它可以被分为3类:数字类型、日期和时间类型以及字符串(字符)类型。
- 在字符串中不仅可以使用普通的字符,也可使用几个转义序列,它们用来表示特殊的字符。
- NUL字节与NULL值不同:NUL为一个零值字节,而NULL代表没有值。
- 如何在串中使用引号:
- 如果串是用徐昂通的引号括起来的,那么在串中需要引号的地方重复写该引号即可。
- 如果串使用另外的括号括起来的,则不需要双写相应引号,直接在串中使用,该引号不被特殊对待。
- 使用反斜杠,用转移序列的方式表示:这种方法不去管用来将串括起的是单引号还是双引号。
- MYSQL支持说明为整数(无小数部分)或浮点数(有小数部分)的值。
- MYSQL支持日期/时间的组合,如“1999-06-17 12:30:43”
- NULL值可适用于各种列类型,它通常用来表示“没有值”、“无数据”等意义,并且也不同于例如数字类型的0为或字符串类型的空字符串。
- MYSQL支持所有的ANSI/ISO SQL92的数字类型。这些类型包括准确的数据类型(NUMERIC,DECIMAL,INTEGER和SMALLINT),也包括近似数字的数据类型(float,real,double precision)。
- 整数MYSQL提供了五种整形tinyint、samllint、mediumint、int和bigint。整数列可以用unsigned禁用负数值。
- 浮点型Mysql提供了三种浮点型,float、double、decimal。
MYSQL知识点记录-1相关推荐
- mysql知识点系列-数据目录(Data目录)下文件类型一窥究竟
本文主要基于<高性能MySQL> 文章目录 1.数据库目录 2.frm文件 3.ibd文件 4.ibdata文件 5.ib_logfile文件 6.UNDO日志 7.慢查询日志 8.二进制 ...
- MySQL 当记录不存在时insert,当记录存在时update
MySQL 当记录不存在时insert,当记录存在时更新 网上基本有三种解决方法. 第一种: 示例一:insert多条记录 假设有一个主键为 client_id 的 clients 表,可以使用下面的 ...
- php mysql获取新添加记录的id值_PHP获取MySql新增记录ID值的方法
今天发现用mysql_insert_id()获取到的新增记录的id不正确, 虽然发现源代码的事务写的有问题,但是最根本的原因是,我插入数据的id类型是bigint型 获取MySql新增记录ID值的方法 ...
- mysql 5.6.37 winx64_Mysql 5.6.37 winx64安装双版本mysql笔记记录
机器上现在已经存在5.0版本Mysql的情况下,继续安装一个最新版的mysql. 一.官网下载免安装压缩包. 本人下载的是mysql-5.6.37-winx64.zip.将压缩包解压到自定义目录中.例 ...
- MySQL 当记录不存在时insert,当记录存在时update(ON DUPLICATE KEY UPDATE, REPLACE语句)...
MySQL 当记录不存在时insert,当记录存在时更新 网上基本有三种解决方法. 第一种:示例一:insert多条记录 假设有一个主键为 client_id 的 clients 表,可以使用下面的语 ...
- javaweb基础知识点记录2
javaweb基础知识点记录 1.在service方法中,首先获得请求的方法名,然后根据方法名调用对应的doXXXX方法,比如说请求参数为GET,那么就会去调用doGet方法,请求参数为POST,那么 ...
- javaweb基础知识点记录1
javaweb基础知识点记录 1.当我们通过在浏览器的输入栏中直接输入网址的方式访问网页的时候,浏览器采用的就是GET方法向服务器获取资源. 2.我们可以将Servlet看做是嵌套了HTML代码的ja ...
- MySQL学习记录 (五) ----- 存储函数、存储过程和触发器
相关文章: <MySQL学习记录 (一) ----- 有关数据库的基本概念和MySQL常用命令> <MySQL学习记录 (二) ----- SQL数据查询语句(DQL)> &l ...
- MySQL学习记录 (三) ----- SQL数据定义语句(DDL)
相关文章: <MySQL学习记录 (一) ----- 有关数据库的基本概念和MySQL常用命令> <MySQL学习记录 (二) ----- SQL数据查询语句(DQL)> &l ...
最新文章
- 计算机组成原理:总线
- w3wp.exe内存占用过高(网站打不开,应用程序池回收就正常)
- poj 3614(最大流)
- openmv串口数据 串口助手_Qt小项目之串口助手控制LED
- 01-Javascript简介
- MaxCompute 挑战使用SQL进行序列数据处理
- phpcmsV9调用顶级父栏目的所有子栏目 - 调用总结
- java 继承 extends_java中的继承 (extends) 详解
- Shell 神技:掩盖 Linux 服务器上的操作痕迹
- 【Tensorflow】tensorboard小结
- nodejs下载 安装 配置环境
- 何宾 单片机原理及应用_单片机原理及应用课后答案讲解
- windows解压jar文件
- c语言图形格式输出,C语言输出图形9个.doc
- 计算机如何将两个磁盘合在一起,win10怎么把电脑自带的两个磁盘合并到一起
- 计算机科普扫盲——固态硬盘
- 爬虫爬评书吧_历史故事爬虫
- mysql数据库常用名词_【千寻】MySQL数据库名词注释(持续更新)
- 2019.10.29
- Win10内存占用过高但是实际没有多少进程