《MySQL数据库原理、设计与应⽤》读书笔记(⼀)
前⾔:最近在学数据库,故顺便总结⼀下,⽅便巩固和⽇后回查。
⽬录
⼀、基本概念
(⼀)数据模型
数据库的类型通常按照数据模型来划分。数据模型是数据库系统的核⼼和基础,它是对现实数据特征的抽象,⽤来描述数据,可以理解成⼀种数据结构。
基本数据类型分三种:层次模型、⽹状模型、关系模型。
mysql属于关系模型。
1. 数据建模
数据建模⼤致分为3个阶段:概念建模阶段、逻辑建模阶段、物理建模阶段,对应产物为概念模型、逻辑模型、物理模型。
2. 概念模型的术语
1)实体:客观存在并可相互区分的⾷物。
2)属性:实体所具有的特性,
3)联系:指实体与实体之间的联系
4)实体型:通过实体名(如学⽣)和属性名(如学号、班级、姓名)集合来抽象描述同类实体。
5)实体集:同⼀类型实体集合,如全校师⽣。
3. E-R图
即实体-联系图(Entity Relationship Diagram)
4. 关系模型
基本概念:
编程软件培训教程1)关系:⼀个关系对应⼀张⼆维表,包含实体本⾝数据和实体间的联系。
2)属性:⼆维表中的列成为属性。
3)元组:⼆维表中每⼀⾏数据称为⼀个元组
4)域:指属性的取值范围
5)关系模式:关系的描述,“关系名(属性1,属性2,…,属性n)”
6)键(key):⼜称为关键字,具有唯⼀性。主键,⾃⼰表中的;外键,引⽤别⼈表中的属性。注:外键可以是其他表中的⾮主键的字段。
5. 关系模型的完整性
站长之家下载1)实体完整性:要求关系中的主键不能重复且不能取空值。
2)参照完整性:要求关系中的外键要么取空值,要么取被参照关系中的某个元组的主键值。
3)⽤户⾃定义完整性
(⼆)关系运算
1. 并,差,交
2. 笛卡尔积
3. 选择,投影
4. 连接
5. 除 #这个我没看懂 ==b
(三)SQL语⾔grep命令条件查询
SQL由四部分组成:
1. 数据定义语⾔:定义数据库、表
2. 数据操作语⾔:对数据进⾏添加、修改和删除操作。
3. 数据查询语⾔:数据查询
mysql语句分类4. 数据控制语⾔:控制⽤户的访问权限
⼆、基本命令
MySQL默认端⼝号:3306
(⼀)数据库操作
1. 创建数据库
CREATE DATABASE数据库名称[库选项];
# 当数据库名称不存在时,才会创建
简述什么是面向对象CREATE DATABASE IF NOT EXISTS数据库名称;
SHOW WARNINGS;
创建好数据库后,MySQL会在存储数据的data⽬录中创建⼀个与数据库同名的⼦⽬录,并在⼦⽬录中⽣成⼀个db.opt⽂件,保存数据库选项。
2. 查看数据库
#查看所有数据库
SHOW DATABASES;
#查看指定数据库的创建信息
SHOW CREATE DATABASE数据库名称;
3. 选择数据库
use数据库名称;
#登录MySQL服务器时选择数据库
mysql -uroot -p密码数据库名
#在命令⾏执⾏
5. 删除数据库
DROP DATABASE数据库名称;
DROP DATABASE IF EXISTS数据库名称;
NOTE:
1.在命令⾏窗⼝中,还可以使⽤“/G”结尾,如SHOW DATABASES\G将显⽰结果以每条记录为⼀组,将所有字段纵向展⽰。(好看)
2.MySQL的关键字在使⽤时不区分⼤⼩写
3.为避免⽤户⾃定义的名称与系统中命令冲突,最好使⽤反引号(``)包裹数据库名称、字段名称和数据表名称。
(⼆)数据表操作
1. 创建数据表
CREATE[TEMPORARY]TABLE[IF NOT EXISTS]表名
(字段名字段类型[字段属性]...)[表选项]
2. 查看数据表
SHOW TABLES[LIKE匹配模式];
#查看数据表的相关信息
SHOW TABLE STATUS[FROM数据库名][LIKE匹配模式];
匹配模式符有两种,分别为“%”和“_”
LIKE后的匹配模式必须使⽤单引号或双引号包裹。
3. 修改数据表
#⽅式⼀
ALTER TABLE旧表名RENAME[TO|AS]新表名;
#⽅式⼆
RENAME TABLE旧表名1TO新表名1[,旧表名2TO新表名2...]
#修改表选项
ALTER TABLE表名表选项[=]值;
#查看修改结果
SHOW CREATE TABLE xxx\G
4. 查看表结构
mysql提供的DESCRIBE语句可以查看数据表中所有字段或指定字段的信息,包括字段名、字段类型等。
1)查看数据表的字段信息
#语法格式1:
{ DESCRIBE|DESC } 数据表名;
#语法格式2:
html居中标签代码
{ DESCRIBE|DESC } 数据表名字段名;
2)查看数据表的创建语句SHOW CREATE TABLE表名;
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论