什么是数据库?
数据库(Database,简称DB)概念:长期存放在计算机内,有组织、可共享的大量数据的集合,是一个数据“仓库”。
作用:可以存放,管理数据。
分类: 可以分为关系型数据库(MySQL)和NoSQL数据库。
关系型数据库有 Oracle , PostgreSQL,MySQL等
NoSQL数据库有 redis, mongoDB
特点
1.操作便捷 , 适合中小型甚至大型网站应用
2.小巧,功能齐全
3.免费开源的数据库
4.可运行于windows或linux系统
数据库结构分类
1.数据库(Database):以文件的形式存放在磁盘上,即对应于一个或多个物理文件。
2.数据表(Table):简称表,由一组数据记录组成,数据库中的数据是以表为单位进行组织的。
3.字段(Field):也称域,表中的每一列称为一个 字段,每个字段都有相应的描述信息。
4.记录(Record):表中的每一行称为一个记录,它由若干个字段组成。
5.索引(Index):索引实际上是一种特殊类型的表,含有关键字段的值和指向实际记录位置的针,提高访问数据库的效率。
6.SQL语句:结构化查询语句命令,用来从一个或多个表中获取一组指定的记录,或者对某个表执行指定的操作。
SQL语句分类
SQL语句,即结构化查询语言(Structured Query Language),是一种特殊目的的编程语言,是一 种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统,同时也是数据库 脚本文件的扩展名。
SQL语句示例说明
注意:SQL语法不区分大小写, 空格换行也不影响语法结构。
对库的操作语句
创建一个库 create database 库名;
查看库 show databases;
删除库(危险操作) drop database 库名
使用库(选择库) use 库名;
建表语法
create table 表名(
`字段名` 数据类型 字段属性 "注释",
`字段名` 数据类型 字段属性 "注释",
`字段名` 数据类型 字段属性 "注释"
);
注意:“``” 当前符号为反引号,用于区别MySQL保留字与普通字符而引入的。
查看表结构
1. DESC 表名
2. show create table person;
注:engine=myisam 数据引擎
字段类型
三大范式
第一范式:遵循原子性。即,表中字段的数据,不可以再拆分。
第二范式: 在满足第一范式的情况下,遵循唯一性,消除部分依赖。即,表中任意一个主键或意一组联合主键,可以确定除该主键外的所有的非主键值。
注: 一个表只能描述一件事情。
第三范式: 在满足第二范式的情况下,消除传递依赖。即,在任一主键都可以确定所有非主段的情况下,不能存在某非主键字段 A 可以获取 某非主键字段 B。
注: 第三范式确保主键列之间没有传递函数依赖关系,也就是消除传递依赖。