Mysql从基础入门(1)之数据库建表和增删改

数据库的介绍

数据库:存储和管理数据的仓库,数据是有组织的进行存储

数据库管理系统:管理数据库的大型软件,DBMS(DataBase Management System)

1.ER图

表与表之间的关系
在这里插入图片描述

2.约束

约束是作用于表中列上的规则,用于限制加入表的数据

(1)非空约束
关键字:NOT NULL

保证列中所有的数据不能有null值。

– 创建表时添加非空约束
CREATE TABLE 表名(
列名 数据类型 NOT NULL,

);

(2)唯一约束
关键字是 UNIQUE

保证列中所有数据各不相同。

– 创建表时添加唯一约束
CREATE TABLE 表名(
列名 数据类型 UNIQUE …);

(3)主键约束
关键字: PRIMARY KEY

主键是一行数据的唯一标识,要求非空且唯一。一般我们都会给没张表添加一个主键列用来唯一标识数据。

(4)外键约束
关键字是: FOREIGN KEY

外键用来让两个表的数据之间建立链接,保证数据的一致性和完整性。

在这里插入图片描述

简单说就是两张表有关联,当年想删除id=1的部门时,就会出错(因为有好几个员工都属于这个部门)

语法:

– 创建表时添加外键约束
CREATE TABLE 表名(
列名 数据类型,

[CONSTRAINT] [外键名称] FOREIGN KEY(外键列名) REFERENCES 主表(主表列名)
);

e.g.
建立一个“学生选课”表SC,它由学号Sno、课程号Cno,修课成绩Grade组成,其中(Sno, Cno)为主码Sno,Cno还分别为外码

CREATE TABLE 
SC(Sno varCHAR(5), Cno varCHAR(3), Grade int, 
Primary key (Sno, Cno), 
FOREIGN KEY (Sno) REFERENCES Student(Sno), 
FOREIGN KEY (Cno) REFERENCES Course(Cno));

Mysql常用命令

数据库服务启动:net start mysql

服务关闭:net stop mysql

登录:mysql -uroot -p1234(1234为密码)

数据库定义(DDL)

DDL(Data Definition Language) ,创建(准备工作)

1.DDL操作数据库

语句 含义
show databases; 查看所有的数据库
create database 数据库名称; 创建数据库
drop database 数据库名称; 删除数据库
use 数据库名称; 使用数据库

2.DDL操作表

可以对比上面的操作数据库,非常相似

(1) 查询当前数据库下所有表名称:

show tables;

(2)查询表的结构:

desc 表名称;

(3)删除表:

drop table 表名;

(4)创建表:

create table 表名 (字段名1 数据类型1, 字段名2 数据类型2, … 字段名n 数据类型n);

如:

create table tb_user (
	id int,
    username varchar(20),
    password varchar(32)
);

(5)修改表:

> ALTER TABLE <表名> 
> [ ADD <新列名> <数据类型> [ 完整性约束 ] ]
>  [ DROP <完整性约束名> ] [
> MODIFY <列名> <数据类型> ]

<表名>:要修改的基本表
ADD子句:增加新列和新的完整性约束条件
DROP子句:删除指定的完整性约束条件
MODIFY子句:用于修改列名和数据类型

操作数据(DML)

DML(Data Manipulation Language) 数据操作语言

1. 添加数据

给指定列添加数据:

INSERT INTO 表名(列名1,列名2,…) VALUES(值1,值2,…);

给全部列添加数据:

INSERT INTO 表名 VALUES(值1,值2,…);

e.g.

-- 给stu表的指定列添加数据
INSERT INTO stu (id, NAME) VALUES (1, '张三');

-- 给student表的全部列添加数据
insert into student values('95010','','','18','IS');

2. 修改数据

(也可以说是更新数据)

UPDATE 表名 SET 列名1=值1,列名2=值2,… [WHERE 条件] ;

e.g.

-- 将张三的性别修改为女
update stu set sex = '女' where name = '张三';

--将stu表中所有人的性别修改为女
update stu set sex = '女';

3. 删除数据

DELETE FROM 表名 [WHERE 条件] ;

e.g.

-- 删除张三记录
delete from stu where name = '张三';

-- 删除stu表中所有的数据
delete from stu;

猜你喜欢

转载自blog.csdn.net/ji_meng/article/details/126656455