- 什么是sql
- 一般结构化查询语言
- 常见数据库
- SQL Server
- MySQL
- Oracle
- Sybase
- DB2
- H2
- 为什么要用数据库
- 存放数据方便,提高数据存放的效率及安全性,进行数据共享
- 什么是数据库
- 存放数据的仓库,将数据按照表的形式组织起来进行存放
- 数据库的基础概念
- 实体
- 数据库中存放的每一条记录可以理解为一个实体,如学生表中的每一个学生,商品表中的每一个商品。
- 属性
- 每一个实体的特征,我们用属性来描述实体。(列、字段)
- 数据
- 如属性的属性值 001、张三就是数据。数据的形式保含文本信息、图片、视频、音频、日期时间等等
- 常用的客户端
- navicat sqlyog
- 实体
如果要使用CMD窗口作为客户端,需要配置环境变量,在path中添加如下变量值:Program Files\MySQL\MySQL Server 5.5\bin;
- my.ini
- 是mysql数据库核心配置文件
注意:使用数据库之前一定启动服务
- 数据库服务器
- mysql默认数据库
- information_schema:
- 提供了访问数据库元数据的方式,数据库字典。 保存着关于MySQL服务器所维护的所有其他数据库的信息。(如数据库名,数据库的表,表栏的数据类型与访问权 限
- mysql :
- mysql的核心数据库,类似于sql server中的master表,主要负责存储数据库的用户、权限设置、关键字等mysql自己需要使用的控制和管理信息
- performance_schema :
- 数据库服务器的性能参数
- 不区分大小写,但建议关键字大写,表名、列名小写
- 每条命令最好用分号结尾
- 每条命令根据需要,可以进行缩进或换行
- 注释
- 单行注释:#注释文字
- 单行注释:-- 注释文字
- 多行注释:/* 注释文字 */
DDL data definition language 数据定义语句 (create alter drop)
DML data manipulation language 数据操作语句 (insert update delete)
DQL data query language 数据查询语句(select)
DCL data control lanugage 数据控制语句(grant revoke commit rollback)
登录:mysql 【-h 主机名 -P 端口号】 -u 用户名 -p密码
退出:exit或ctrl+C
方式一:通过dos窗口
net start 服务名
net stop 服务名
方式一:登录到mysql服务端
select version();
方式二:没有登录到mysql服务端
mysql --version 或 mysql --V
explain
int(4):配合zerofill进行使用,显示占4位宽度,不够会补零,需要是无符号
DECIMAL(max(65),max(30)):最大数字位数和最大小数位数
如果精确运算,使用DECIMAL,没有精确运算的需求,建议使用float double
char和varchar的区别
- 场景区别:char适合存放定长字符串,varchar存放长度可变的字符串
- 后面的数字:字符个数,char后面最多可以写到255,varchar:一行数据最多占65535个字节(除去Bolb类的数据类型)
- 除去其他列所占的空间,剩余的空间和varchar后面写的字符个数有关系,编码不同,一个字符所占用的存储空间也不一样,所以也会影响varchar后字符个数
- char是固定长度,char(5),如果存放了3个字符,也会按照5个字符占用存储空间
- varchar(5):可变长度,如果存储了3个字符,会按照3个字符占用存储空间。
- 速度区别:char优于varchar
- 空格的处理:char会消灭掉字符后自己插入的空格,varchar不会
- date类型可用于需要一个日期而不需要时间的部分
- 格式为YYYY-MM-DD 范围是'1000-01-01' 到'9999-12-31'
- datetime类型可用于需要同时包含日期和时间的信息的值
- 格式为YYYY-MM-DD HH:mm:ss 范围是'1000-01-0100:00:00' 到 '9999-12-3123:59:59'
enum只能从列出来的值中选择一个作为数据,set可以从列出来的值中选择多个值作为数据。
- 每列保证原子性,且唯一
- 首先满足第一范式
- 必须要有一个主键
- 如果主键是复合主键,除了主键以外的其他列必须完全依赖于主键列,不能只依赖于主键的一部分
- 满足第二范式
- 除了主键以外的其他列必须直接依赖于主键,不能间接依赖于主键
http://dev.mysql.com/downloads/mysql/5.5.html#downloads
此处选择详细配置
此处选择开发机
此处选择多功能数据库
直接下一步