mysql

1. MySQL简介

MySQL是广泛应用的一种关系型数据库

1.1 三范式

第一范式(1NF):列不可拆分

第二范式(2NF):唯一标识

第三范式(3NF):引用主键

后一个范式,都是在前一个范式的基础上建立的

1.2 数据的完整性

一个数据库就是一个完整的业务单元,可以包含多张表,数据被存储在表中

在表中为了更加准确的存储数据,保证数据的正确有效,可以在创建表的时候,为表添加一些强制性的验证,包括数据字段的类型、约束

1.2.1字段类型

数字:int,decimal

int:整数型 4字节 一般不用指定长度

decimal:小数值

decimal(5,2) #整数位最多三位,小数位最多2位

字符串:char,varchar,text

char(10): 10个字符长度,用不完也是10个长度

varchar(10):10个字符长度,用多少是多少长度

char因为是定长,所以查询效率高,但是相对浪费空间

varchar因为是变长,所以节省空间,但是相对查询效率低

日期 datetime,date,time

datetime:年月日时分秒

date:年月日

time:时分秒

布尔:bit(只有0和1)

1.2.2约束

主键 primary key 具有唯一性

非空 not null

唯一 unique

默认 defalt

外键 foreign key

2. 数据库与 表的操作(以下操作均为脚本命令操作)

登录

mysql-uroot -p#登录本地数据库mysql -hip -uname -ppassword#登录远程数据库 要知道对方的ip 用户名和密码

退出

exit#退出系统

2.1数据库操作

创建数据库

createdatabases 数据库名 charset=utf8;#如果安装数据库的时候选择了编码格式,这就不用再写了

删除数据库

dropdatabase数据库名;

切换当前数据库

use数据库名;

查看当前数据库

selectdatabase();

2.2表操作

创建表

createtable名字(    列名 类型 约束,    列名 类型 约束);

修改表

altertable表名add|modify|drop列名 类型;

删除表

droptable表名;

查看表结构

desc 表名;

更改表名称

renametable原表名to新表名;

查看标的创建语句

showcreatetable'表名';

3.数据的增加、修改、删除

增加

增加完整的一条信息

insertinto表名values(每一列的值);

缺省插入

insert into 表名(列1,列2...)values(值1,值2...);

同时插入多条数据

insertinto表名 values(...),(...)...;或insertinto表名(列1,...) values(值1,...),(值1,...)...;

删除

deletefrom表名where条件

修改

update 表名set列1=值1,...where条件

4. 数据的查询

查询表里的所有信息

select*from表名

*的位置可以列名,表示查找这一列,也可以写条件

你可能感兴趣的:(mysql)