MySQL基础(一)

   日期:2020-05-13     浏览:94    评论:0    
核心提示:前言:最近在学数据库,故顺便总结一下,方便巩固和日后回查。一、基本概念(一)数据模型数据库的类型通常按照数据模型来划分。数据模型是数据库系统的核心和基础,它是对现实数据特征的抽象,用来描述数据,可以理解成一种数据结构。基本数据类型分三种:层次模型、网状模型、关系模型。mysql属于关系模型。数据建模数据建模大致分为3个阶段:概念建模阶段、逻辑建模阶段、物理建模阶段,对应产物为概念模型、逻辑模型、物理模型。概念模型的术语1)实体:客观存在并可相互区分的食物。2)属性:实体所具有的特数据库

前言:最近在学数据库,故顺便总结一下,方便巩固和日后回查。

目录

    • 一、基本概念
      • (一)数据模型
      • (二)关系运算
      • (三)SQL语言
    • 二、基本命令
      • (一)数据库操作
      • (二)数据表操作
      • (三)数据操作

一、基本概念

(一)数据模型

数据库的类型通常按照数据模型来划分。数据模型是数据库系统的核心和基础,它是对现实数据特征的抽象,用来描述数据,可以理解成一种数据结构。
基本数据类型分三种:层次模型、网状模型、关系模型。
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语言

SQL由四部分组成:

  1. 数据定义语言:定义数据库、表
  2. 数据操作语言:对数据进行添加、修改和删除操作。
  3. 数据查询语言:数据查询
  4. 数据控制语言:控制用户的访问权限

二、基本命令

MySQL默认端口号:3306

(一)数据库操作

  1. 创建数据库
CREATE DATABASE 数据库名称 [库选项];
# 当数据库名称不存在时,才会创建
CREATE DATABASE IF NOT EXISTS 数据库名称;
SHOW WARNINGS;


创建好数据库后,MySQL会在存储数据的data目录中创建一个与数据库同名的子目录,并在子目录中生成一个db.opt文件,保存数据库选项。

  1. 查看数据库
#查看所有数据库
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后的匹配模式必须使用单引号或双引号包裹。

  1. 修改数据表
#方式一
ALTER TABLE 旧表名 RENAME [TO|AS] 新表名;
#方式二
RENAME TABLE 旧表名1 TO 新表名1 [,旧表名2 TO 新表名2...]
#修改表选项
ALTER TABLE 表名 表选项 [=];
#查看修改结果
SHOW CREATE TABLE xxx\G
  1. 查看表结构
    mysql提供的DESCRIBE语句可以查看数据表中所有字段或指定字段的信息,包括字段名、字段类型等。
    1)查看数据表的字段信息
#语法格式1:
{ DESCRIBE | DESC } 数据表名;
#语法格式2:
{ DESCRIBE | DESC } 数据表名 字段名;

2)查看数据表的创建语句

SHOW CREATE TABLE 表名;

3)查看数据表结构

#语法格式1
SHOW [FULL] COLUMNS FROM 数据库表名;
#语法格式2
SHOW [FULL] COLUMNS FROM 数据库名.数据库表名;
  1. 修改表结构
    1)修改字段名
ALTER TABLE 数据库名 CHANGE [COLUMN] 旧字段名 新字段名 字段类型 [字段属性];
#例如:
ALTER TABLE XXX CHANGE description des VARCHAR(255);
DESC XXX;

2)修改字段类型

ALTER TABLE 数据表名 MODIFY [COLUMN] 字段名 新类型 [字段属性];

3)修改字段位置

ALTER TABLE 数据表名 MODIFY [COLUMN] 字段名1 数据类型 [字段属性] [FIRST | AFTER 字段名2];

4) 新增字段

#语法格式1:新增一个字段,并可指定其位置
ALTER TABLE 数据库名 ADD [COLUMN] 新字段名 字段类型 [FIRST | AFTER 字段名]
#语法格式2:同时新增多个字段
ALTER TABLE 数据表名 ADD [COLUMN] (新字段名1 字段类型1,新字段名2 字段类型2,...)

5)删除字段

ALTER TABLE 数据表名 DROp [COLUMN] 字段名;
  1. 删除数据表
    此操作指的是删除指定数据库中已经存在的表。在删除数据表的同时,存储在数据表中的数据都将被删除。
DROP [TEMPORARY] TABLE [IF EXISTS] 数据表1 [,数据表2]...;	

(三)数据操作

  1. 添加数据
    1)为所有字段添加数据
INSERT [INTO] 数据表名 {VALUES | VALUE} (1[,2]...);

2)为部分字段添加数据

#方式一:
INSERT [INTO] 数据库名 (字段名1 [,字段名2]...) {VALUES | VALUE} (1[,2]...);
#方式二:推荐
INSERT [INTO] 数据表名 SET 字段名1=1 [,字段名2=2];

3)一次添加多行数据

INSERT [INTO] 数据库名 [(字段列表)] {VALUES | VALUE} (值列表) [,(值列表)...];
  1. 查询数据
SELECT * FROM 数据表名;
SELECt {字段名1,字段名2,...} FROM 数据表名;
SELECt *|{字段名1,字段名2,...} FROM 数据表名 WHERe 字段名=;
  1. 修改数据
UPDATe 数据表名
SET 字段名1=1 [,字段名2=2...]
[WHERe 条件表达式]
  1. 删除数据
DELETE FROM 数据表名 [WHERe 条件表达式];

参考文献:《MySQL数据库原理、设计与应用》

 
打赏
 本文转载自:网络 
所有权利归属于原作者,如文章来源标示错误或侵犯了您的权利请联系微信13520258486
更多>最近资讯中心
更多>最新资讯中心
0相关评论

推荐图文
推荐资讯中心
点击排行
最新信息
新手指南
采购商服务
供应商服务
交易安全
关注我们
手机网站:
新浪微博:
微信关注:

13520258486

周一至周五 9:00-18:00
(其他时间联系在线客服)

24小时在线客服