Mysql学习之基础
数据库基础
什么是数据库
数据库是一个以某种有组织的方式存储数据集合,通常是一个文件或是一组文件,是通过DBMS(数据库管理系统)
来对数据库进行交互的,数据库可以是保存在硬设备上的文件,
也可以不是,很大程度上说,数据库究竟是文件还是别的什么东西并不重要,因为你不是直接访问数据库,
而是借助DBMS对数据库进行操作
数据库是保存有组织的数据容器
什么是表
在你将资料放入文件柜时,并不是直接放入文件柜,而是记录在纸上,这个纸对于数据库而言,就是数据库的表。
表是一种结构化的文件,可以用来存储某种特定类型的数据。
表是某种特定类型数据的结构化清单
表名在一个数据内是唯一的
什么是模式
模式是数据库和表的布局及特性的信息
什么是列
列是表中的一个字段,所有表都是由一个或多个列组成的
数据类型
所容许的数据的类型,每个表列都有相应的数据类型,它限制或容许该列中存储的数据。
数据类型限制可存储在列中的数据种类,还帮助正确的排序数据,并在优化磁盘使用方面起重要作用。
因此在创建表时必须对数据类型给予特别的关注
行
表中的数据按行存储的,所保存的每个记录存储在自己的行内。
如果把表想象为网格,网格垂直的列为表列,水平的行为表行
行(row)表中的一个记录
主键
表中每一行都应该有可以唯一标识自己的一列(或一组列),其值能够唯一区分表中每个行。
没有主键,更新或删除表中特定行很困难,因为没有安全的方法保证只涉及相关的行
虽然并不是总是需要主键,但大多少数据库设计人员都应保证他们创建但每个表具有一个主键,
以便于以后但数据操作和管理
表中但任何列都可以为主键,只要它满足以下条件
>> 任意两行都不具有相同但主键值
>> 每个行都必须具有一个主键值,主键列不允许NULL值。
主键值规则
主键通常定义在表的一列上,但这并不是必需但,也可以一起使用多个列作为主键,在使用多列作为主键时,上述条件必需应用
到构成主键但所有列,所有列值但组合必须是唯一的(单个列的值可以不唯一)
主键的最好习惯,除mysql强制实施规则外,应该坚持几个普遍认可的最好习惯
- 不更新主键列的值
- 不重用主键列的值
- 不在主键列中使用可能会更改的值
什么是SQL
SQL是结构化查询语言(structured query language)的缩写,SQL是一种专门用来与数据库通信的语言
SQL由很少的词构成,这是有意而为的,设计SQL的目的是很好的完成一项任务,即提供一种从数据库中读写数据
的简单有效的方法
SQL优点
- SQL不是某个特定的数据供应商专有的语言,几乎所有的重要的DBMS都支持SQ,所以学习此语言几乎能与所有的数据库打交道
- SQL简单易学,它的语句全部都是由描述性很强的英语单词组成
- SQL尽管看上去很简单,但它实际上是一种强有力的语言,灵活使用其语言元素,可以进行非常复杂和高级的数据库操作
DBMS专用的SQL,SQL不是一种专利语言,而且存在一个标准委员会,他们试图定义可供所有DBMS使用的SQL语法,
但事实上任意两个DBMS实现但SQL都不完全相同
Mysql学习之基础的更多相关文章
- MySQL学习笔记——基础与进阶篇
目录 一.###MySQL登录和退出 二.###MySQL常用命令 三.###MySQL语法规范 四.###基础查询 五.###条件查询 六.###排序查询 七.###常见函数的学习 八.###分组查 ...
- Mysql学习---面试基础知识点总结
drop.truncate. delete区别 TRUNCATE TABLE 在功能上与不带 WHERE 子句的 DELETE 语句相同:二者均删除表中的全部行.但 TRUNCATE TABLE 比 ...
- mysql学习之基础知识
一.什么是数据库 一般而言,数据库(Database)是按照数据结构来组织.存储和管理数据的仓库.我们也可以将数据存储在文件中,但是在文件中读写数据速度相对较慢.所以,使用关系型数据库管理系统(RDB ...
- mysql学习之基础篇01
大概在一周前看了燕十八老师讲解的mysql数据库视频,也跟着学了一周,我就想把我这一周所学的知识跟大家分享一下:因为是第一次写博客,所以可能会写的很烂,请大家多多包涵.文章中有不对的地方还请大家指出来 ...
- Mysql 学习之基础操作
一.表复制 1.复制表结构 将表hello的结构复制一份为表hello3 2.复制数据 a.如果两张表的结构一样且你要复制所有列的数据 mysql> insert into hello3 ...
- mysql学习之基础篇08 UTF8编码
这次我们来说一下在Mysql中的编码问题: 我们知道应用于计算机的最早的字符集是ASCII,它所组成的编码是ASCII编码:由于对于其他国家来说它所容纳的字符个数比较少,后来就出现了ANSI字符集,它 ...
- mysql学习之基础篇05
mysql中的统计函数: 1. 查询商品价格中最高的价格: select max(shop_price) from goods; 2. 查询商品价格中最低的价格: select min(shop_pr ...
- mysql学习之基础篇04
五种基本子句查询 查询是mysql中最重要的一环,我们今天就来说一下select的五种子句中的where条件查询: 首先我们先建立一张商品表:goods 由于商品数目太多,我就不一一列举了. 在这里我 ...
- mysql学习之基础篇03
我们今天来进行建表的基本操作: 首先要建表就要了解列类型,因为建表就是声明列的过程,列声明完成了,表也就建好了. mysql中列分为三大类: 一.数值型 数值型又分为整型和浮点型两种. 先来看整型: ...
随机推荐
- Neo4j 第一篇:在Windows环境中安装Neo4j
图形数据库(Graph Database)是NoSQL数据库家族中特殊的存在,用于存储丰富的关系数据,Neo4j 是目前最流行的图形数据库,支持完整的事务,在属性图中,图是由顶点(Vertex),边( ...
- 【ASP.NET】website转webapplication
*以下操作都以VS2013为参考: #新建两种web项目 1.添加webapplication项目: 2.添加website项目: #比较两种web项目新建的webform页面的不同点: 1.文件目录 ...
- 苹果手机iOS11中fixed弹出框中input光标错位问题
最近遇到了一个移动前端的BUG:手机弹出框中的输入框focus时光标可能会错位. 刚开始时我完全不知道错误原因是什么,在电脑上调试时完全没有问题,手机上出现问题时也没有找到规律.后来在网上搜索了大量的 ...
- IE提示“Internet Explorer已限制此网页运行脚本或ActiveX控件”的解决办法
在页面html开始标签和head开始标签中间新增一行,添加以下代码: <!-- saved from url=(0014)about:internet --> 或者 直接设置IE浏览器 工 ...
- 数据结构Java实现04---树及其相关操作
首先什么是树结构? 树是一种描述非线性层次关系的数据结构,树是n个数据结点的集合,这些集结点包含一个根节点,根节点下有着互相不交叉的子集合,这些子集合便是根节点的子树. 树的特点 在一个树结构中,有且 ...
- Angular7_人员登记系统
1.ts public peopleInfo: any = { username: 'kxy', sex: '男', cityList: ['汕头', '广州', '茂名'], city: '汕头', ...
- Ansible------常用功能
local_action Ansible 默认只会对控制机器执行操作,但如果在这个过程中需要在 Ansible 本机执行操作就需要使用到local_action become:True Ansible ...
- C++设计模式——观察者模式
观察者模式 在GOF的<设计模式:可复用面向对象软件的基础>一书中对观察者模式是这样说的:定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动 ...
- cefsharp解决闪烁
CefSharp禁用GPU的命令行参数 其中,Major和Minor分别指代系统的主版本(大版本).次版本(小版本)版本号.其中指定了Windows7系统会禁用 GPU.,突发奇想,是否windows ...
- Mysql --创建用户和授权,备份
权限管理 我们知道我们的最高权限管理者是root用户,它拥有着最高的权限操作.包括select.update.delete.update.grant等操作.那么一般情况在公司之后DBA工程师会创建一个 ...