MySQL之数据库及表操作


文章目录

  • MySQL之数据库及表操作
  • 一、数据库的基本结构
  • 二、数据库的创建和删除
  • 三、数据表的结构定义和操作
  • 四、数据的插入
  • 五、主键和自增长属性
  • 1、什么是主键
  • 2、自增长属性


一、数据库的基本结构

数据库系统由数据库服务器为载体,拥有一个或者多个数据库,一个数据库里又可以拥有众多张表,表里可以存储数据。
















数据库服务器

数据库

数据库

数据表

数据表

数据表

数据表

数据

数据

数据

数据

数据

数据

数据

数据


二、数据库的创建和删除

数据库的创建使用SQL语句create database testsql;创建一个名为testsql的数据库。

查看MySQL数据库表与表的关系_字段


如果需要查询目前服务器内有哪些数据库,使用show databases;即可。

查看MySQL数据库表与表的关系_mysql_02


若要删除数据库,使用drop database <database_name>;删除数据库。

查看MySQL数据库表与表的关系_数据_03


最后使用use <database_name>;使用数据库,当回复Database changed即为成功。

查看MySQL数据库表与表的关系_数据库_04

三、数据表的结构定义和操作

创建数据库之后,需要使用create table <table_name>进行创建数据表。同时在创建表的时候,可以定义表的结构,这里以一个学生信息表(student)为例,创建“ID(学号)”,“Name(姓名)”,“Sex(性别)”字段。

create table student(
      ID int,
      Name char(20),
      Sex char(5)
      );engine=innodb;

当需要新增字段的时候,使用命令alter table student add column tel int;,即为新增名为tel的字段;
需要删除字段的时候,使用命令alter table student drop tel;,即为删除名为tel的字段;
需要修改字段的名字或类型的时候,使用命令alter table student change column tel telephone char(10);,即为将名为tel的字段改为telephone并将类型改为了char(10)。同时还能细分为renamemodify属性,rename是更改字段名称的,modify用于更改字段类型和约束条件。

当需要查询表结构的时候,使用show columns from student;

查看MySQL数据库表与表的关系_mysql_05

当需要查询该数据库中所有数据表的名称时,使用show tables;命令即可。

查看MySQL数据库表与表的关系_mysql_06

四、数据的插入

建立好数据表之后,将需要插入数据进入表中。采用命令insert into <table_name>(data_name) values(data);,以插入student表一条数据为例

insert into student(ID,Name,Sex,telephone) values(10001,'张三','男','1384267341');

使用查询语句select * from student;查询数据情况。

查看MySQL数据库表与表的关系_字段_07

五、主键和自增长属性

1、什么是主键

数据库主键是一个用于唯一标识关系表中每一行的列或一组列。主键可以用来确保表中的行具有唯一性和禁止重复。主键的值不能为NULL,且必须在表中唯一。

设置主键,可以在创建数据表的时候写入primary key即可。
情况1:

create table student(
      ID int primary key,
      Name char(20),
      Sex char(5)
      );engine=innodb;

情况2:

create table student(
      ID int,
      Name char(20),
      Sex char(5)
      primary key(ID)
      );engine=innodb;

也可以在创建好数据表之后添加主键,方法和修改数据库字段一样。

alter table student change column ID ID int primary key;

再使用查询字段的命令,可以发现ID字段的Key值出现了PRI标识。

查看MySQL数据库表与表的关系_mysql_08

2、自增长属性

当学生的ID(学号)为顺序增长时,可以使用自增长属性减少数据录入工作量。关键字为auto_increment 同理可以通过创建数据表的时候加入

create table student(
      ID int primary key auto_increment,
      Name char(20),
      Sex char(5)
      );engine=innodb;

或者通过修改字段进行添加

alter table student modify column ID int auto_increment;

添加自增长后,再添加一条不包含ID(学号)信息后,查询表数据

insert into student(Name,Sex,telephone) values('李四','男',1790997633);

查看MySQL数据库表与表的关系_字段_09


此处ID(学号)自增长为10002