这一篇介绍一些有关SQL的入门知识
1.数据库介绍
- 随着互联网的高速发展,大量的数据在不断的产生,伴随而来的是如何高效安全的存储数据和处理数据,而这一问题成为了信息时代的一个非常大的问题。
- 使用数据库可以有效的有条理的储存数据:
- 1.可以结构化存储大量的数据
- 2.可以有效的保持数据的一致性、完整性。
1.1 数据库分类
- 关系型数据库:SQL : (一般处理关系型数据, 通过行索引,和列索引可以确定唯一的数据值)
- 数据与数据之间存在关联关系
- 存储的是结构化数据,数据之间可以创建关联关系或者关联规则
- 常见的关系型数据库:
- MySQL:最常用的关系型数据库之一,且开源免费(MySQL6.X版本后已经开始收费)
- Orcale:当前最优秀的关系型数据库,收费。
- DB2:一般在银行系统中使用,收费且较贵。(数据安全,稳定,精度损失)
- SQLserver: 在windowsServer中使用,国内使用的较少
- sqllite:小型数据库
- 非关系型数据库:NoSQL(不仅仅是SQL):
- 数据与数据之间不存在关联关系
- 存储的是kv结构的数据(
key: value 一个键对应一个值,通过键取值) - 常见的非关系型数据库:
- Redis:在内存 中存储,效率高,速度快,但数据体量不宜过大。
- HBASE:列式存储数据库,高效存储海量数据(数据吞吐量极大)
- mangoDB:一般和爬虫配合使用,用于存储大型文本数据。
2.SQL语法
- SQL语言规范是所有的关系型数据库都必须遵守的规范
- sql规范相当于普通话,而每个厂家的sql语法相当于方言。
2.1 SQL语言的分类
- 数据定义语言(DDL):创建一个存储数据记录的结构(数据库,数据表,数据字段,约束等)
- 数据操作语言(DML):进行数据记录的写入,修改,删除等工作。
- 数据查询语言(DQL):进行数据查询的工作,换句话说,就是数据的读取工作。
- 数据控制语言(DCL):数据安全,用户管理,隔离等级等设置。
2.2 SQL通用语法
- sql语句用分号(;)结尾,目的是区分sql语句到底是一句指令还是两句指令。
- sql语句可以使用空格或者换行符随意修饰,使其可读性更强,但是不影响执行效果。(关键字或者标识符不能拆分)
- sql语句不区分大小写,但是mysql中建议使用大写
- 注释形式:
- 单行注释:
--或者#(建议使用--) - 多行注释:
/*注释内容*/
- 单行注释:
2.3 数据类型
常用的数据类型:
- 整型(整数):数学运算
- int
- 浮点型(小数):数学运算
- double
- 日期类型:
- datetime 时间规则 举例 : 2023-12-22 12:33:26
- date 日期规则 举例 : 2023-12-22
- 文本型: 一般用于计数或者分类的数据
- char
- varchar
这些只是常用的数据类型,还有很多其它的类型