MySQL数据库入门与实践(一):数据库简介


提示:此系列文章参考《SQL基础教程第二版》以及《MySQL必知必会》两本书的中译版,特此说明。

一、数据库是什么?

数据库是将大量数据保存起来,通过计算机加工而成的可以进行高效访问的数据集合,该数据集合称为数据库(Database,DB),而用来管理数据库的计算机系统称为数据库管理系统(Database Management System,DBMS)

1.简单的分类

DBMS 主要通过数据的保存格式(数据库的种类)来进行分类,现阶段主要有以下 5 种类型.
关系数据库(Relational Database,RDB),这种类型的 DBMS 称为关系数据库管理系统(Relational Database Management System,RDBMS).
层次数据库(Hierarchical Database,HDB)
面向对象数据库(Object Oriented Database,OODB)
XML数据库(XML Database,XMLDB)
键值存储系统(Key-Value Store,KVS)
本系列文章介绍关系数据库管理系统(RDBMS)的操作方法。

2.简单的结构

使用RDBMS 时,最常见的系统结构就是客户端/ 服务器类型(C/S类型)这种结构,放个图就行了。

简单来说就是,客户端就是写命令的软件,服务器就是下载的MySQL8版本,数据库就是存在硬盘上的数据。

3.简单的安装

在此不进行安装的介绍,有关安装的步骤与注意事项,参考一下文章:

  1. MySQL的安装
  2. 客户端的安装

二、表的简单操作

1.表及其结构

关系数据库通过类似Excel 工作表那样的、由行和列组成的二维表来管理数据。用来管理数据的二维表在关系数据库中简称为。表存储在由RDBMS 管理的数据库中,一个数据库中可以存储多个表。
根据SQL 语句的内容返回的数据同样必须是二维表的形式 ,这也是关系数据库的特征之一。返回结果如果不是二维表的SQL 语句则无法执行。如下图:
在这里插入图片描述
其中,可以看到第一行是列名,接下来的每一行称为记录,在机器学习中我们又把它叫做样本,对于每一列,我们又把一个列称为一个字段,某一行某一列对应一个单元格。这就是表的构成

2.简单的命令

对于表进行相关的操作包括对数据库和表的操作,对表内部的操作如下:

  • 创建(create),删除(drop),修改(alter)

  • 查找(select),插入(insert),更新(update),删除(delete)

命令需要一些规则:

  1. mysql命令不区分大小写,但是习惯用的还是小写
  2. MySQL使用分号(;)结尾
  3. 单词需要用半角空格或者换行来分隔

在进行数据库的操作前,肯定要先创建一个数据库

--创建一个名叫 shop 的数据库
create database shop;
--删除一个名叫 product 的数据库
drop database product;

有了数据库之后,在数据库中需要有实际的东西,也就是表。

--创建了一个名叫 product 的表
create table product;

当然这个表现在还是空的,一个表最终要的就是第一行的列名,所以在创建表的时候,一般也会添加这个表的列名的信息。

--创建一个表:create table 表名 (列名 数据类型 约束,列名 数据类型 约束,列名 数据类型 约束);
create table product 
(product_id char(4) not null,
 product_name varchar(100) not null,
 product_type varchar(32) not null,
 sale_price integer ,
 purchase_price integer ,
 regist_date date ,
 primary(product_id));

在这里插入图片描述

  • 列名:半角英文字母、数字、下划线(_)作为数据库、表和列的名称,并且必须以半角英文字母开头。
  • 数据类型:数据的种类,包括数字型、 字符型和日期型,上述代码中的 char(4)表示4个字符的字符串,varchar(100)表示字符长度在100以内的字符串,integer表示整数型数据,date表示日期型。对于定长字符串如果输入数据不足给定的定长,会以空格补全,但是对于可变长字符串则不会补齐。
  • 约束:not null表示该单元格不可空着,而null表示该单元格必须是缺失值。
  • 主键:在最后一行还有 primary key(列名),该命令表示采用该列作为主列,也就是说使用该列可以讲所有的记录区分开,该列为满秩。这样的好处是索引该列的值时可以取出唯一的记录。

在创建完一个表之后,当然可以对这个表修改(alter)

 --添加列:alter table 表名 add column 列名
 alter table product add column product_name_pinyin varchar(100);

在这里插入图片描述

--删除列:alter table 表名 drop column 列名
alter table product drop column product_name_pinyin;

在这里插入图片描述
有了准备工作之后,需要将数据插入到单元格中。

--插入数据:insert into 表名 vaues(值1,值2,值3,值4,值5,值6)
INSERT INTO Product VALUES ('0001', 'T恤衫', '衣服',1000, 500, '2009-09-20');
INSERT INTO Product VALUES ('0002', '打孔器', '办公用品',500, 320, '2009-09-11');
INSERT INTO Product VALUES ('0003', '运动T恤', '衣服',4000, 2800, NULL);
INSERT INTO Product VALUES ('0004', '菜刀', '厨房用具',3000, 2800, '2009-09-20');
INSERT INTO Product VALUES ('0005', '高压锅', '厨房用具',6800, 5000, '2009-01-15');
INSERT INTO Product VALUES ('0006', '叉子', '厨房用具',500, NULL, '2009-09-20');
INSERT INTO Product VALUES ('0007', '擦菜板', '厨房用具',880, 790, '2008-04-28');
INSERT INTO Product VALUES ('0008', '圆珠笔', '办公用品',100, NULL,'2009-11-11');

可以看出values后面的信息是和列名按顺序对应的。
在这里插入图片描述
到此,我们终于有了可以操作的一张表了。

总结

create table product(product_id char(4) not null);
alter table product add column product_name_pinyin varchar(100);
insert into product values(v1,v2,.....);

包含了数据库的创建和表的创建,以及对表进行简单的修改和数据的插入。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

素梦秋影

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值