1、mysql数据库模型分为三种:层次模型(没一个节点只有一个父节点),网状模型(没一个节点可以有多个父节点),和关系模型(常用,掌握)。
2、关系模型有三种:1对1(班级对正班长),1对多(班级对学生),多对多(课程对学生)。
3、数据库设计包括:概念结构设计(要求掌握),逻辑结构设计,数据物理设计。
4、最常用的关系型数据库:oracle(1521 oracle公司),mysql(3306 ),SQL Server(1433 微软公司),db2(IBM公司)
5、DB数据库,DBMS 数据库管理系统,DBA 数据库管理员
6、编码集---支持中文的编码集有:gb2312,utf8,gbk. utf8(mysql对utf8不敏感,一般表示中文不用它)
7、mysql 是开源的。不区分大小写。
8、创建数据库:create database [if not exists] 数据库名;创建表:create table [if not exists] 表名
9、删除数据库:drop database [if exits] 数据库名:drop table [if exits] 表名。
10、显示多有数据库:show databases;显示一个数据库中的所有表:use 数据库名(切换到该数据库),show tables;
11、显示表结构:desc 表名;显示表内容:select * from 表名;
12、显示创建表的语句为:show create table 表名;显示创建数据库的语句:show create database 数据库名;
13、修改表的名字:alter table 旧表名 rename 新表名;
14、修改表的某个字段:alter table 表名 modify 字段名 字段类型;
15、修改表的某个字段名字:alter table 表名 change 就字段名 新字段名 字段类型;
16、除了数值型数据不加单引号外,其他的都加单引号。
17、作为主键的那一字段不能为空,主键不能重复;
18、定义一个字段如果为unique(唯一的),那么该字段值便不能重复,但该字段可以有多个空值;
19、外键所关联的那张表的那个字段必须是那张表的主键;
20、设置为自动增长的条件是:1,必须是单值主键(非联合主键);2,必须是整型;
21、设置主键一:primary key stuno int(8) 设置主键二:primary key(stuno,petid)
22、设置外键:foreign key(sruno) references 从表名(sruno);
23、
6种约束:
primary key :不能为空,必须唯一;
poreign key :尽量不使用联合主键;
nut null :字段值不能为空值;
unique:设置字段值必须唯一,但可附多个null值;
auto_increment:设置字段值为自增长。需满足条件为:1、该字段必须为单值主键(非联合主键),2,字段类型必须为整型;但如果自己给值的话,字段值就会是自己给的值。(一个表中只能有一个字段值为自动增加的行,且必须是主键。如果是联合主键,那么只能让第一个(按设置联合主键的顺序)联合主键字段可以设置为自增长)
default:为字段设置默认值,如default 3,default 'abc'等。
24、常用集合函数:avg(),max(),min(),sum(),count(),now()(当前时间);
例如:select count(distinct score) from student;