MySQL数据库基础——数据库、数据表的基础操作

前言

SQLStudio下载
本文配图来自国产数据库管理开发工具:SQL Studio
相对传统SQL工具的客户端开发,SQL Studio采用纯Web化开发模式。这种模式最大的好处就是免安装,易上手,更灵活。


一、什么是数据库

数据库-存取数据的仓库
文件也可以存取数据,比如Excel文件(可存约100万条数据),但是当数据量特别大时,Excel的操作就会变得非常慢(另外数据共享也不是非常方便),仅限于做一些简单数据分析、数据可视化的数据来源。
数据的仓库,数据库就在这个时候开始发挥更大的作用。

二、什么是SQL

SQL是一种有特殊目的的编程语言,用于结构化数据库的查询和程序设计。可实现对数据的增删改查。由IBM研发。

三、数据核心知识—语句

在这里插入图片描述

库的操作

-- show databases; -- 查看该用户下所有数据库
-- create database DA charset utf8; --  创建数据库D,设置字符集为utf8,数据库名后续不可修改
-- use DA; -- 使用数据库DA
-- show create Database da; -- 查看指定数据库信息
-- alter database da charset gbk; -- 修改数据库字符集
-- drop database da; -- 删除数据库

表的操作

-- create database DA; --  创建数据库D
-- use DA; -- 使用数据库DA
-- /*创建student表,字段name(设置为主键),sex,age*/
-- create table student(name varchar(20) not null primary key,sex char(4) not null,age int);
-- desc student;  -- 查看表
-- show create table student; -- 查看表
--  alter table student change name name1 varchar(100) not null;  /*修改student表,字段name修改为name1 varchar(100)*/
-- alter table student add addr char(20); /* 修改表,增加addr字段*/
-- alter table student add addr1 varchar(10),add addr2 char(10); /*再增加两个字段,addr1,addr2*/
-- alter table student add id varchar(10) first; /*增加ID字段,并把ID字段放在最前*/
-- alter table student add addr0 varchar(10) after addr;/* 增加addr0字段,并将其放在addr后面*/
-- alter table student drop addr; -- 删除addr字段
-- drop table student; --删除数据表student

在这里插入图片描述

数据类型&约束条件

数据类型

字符串 char(num)和varchar(num),前者定长,后者不定长
整型 int,满足大部分整数存储
浮点型 double(m,n),float(m,n),decimal(m,n) m表示总长度,n表示小数长度
日期型 date,日期;datetime,日期时间
枚举型 enum,单选,eg:性格;set,多选,eg:爱好

约束条件

主键 primary key 指定该列的值,唯一标识该列
单主键,联合主键

create table info1(name varchar(20) primary key); -- 单主键
create table info0(id int primary key auto_increment,name varchar(100));-- auto_increment,自增,此时可以不用输入id
create table info2(name varchar(20) ,id int,primary key(name,id)); -- 联合主键

非空约束 not null 指定某列不能为空

create table info3(name varchar(20) not null);

唯一约束 unique 指定某列或者几列组合不能重复

create table info (name varchar(100) unique);
insert into info values("张三");    -- 该语句不可二次执行,因为张三只能有一个
create table info1 (name varchar(100),id int, unique(name,id));  -- name,id组合的值不能重复
insert into info1 values("张三",1);

默认值 default 为某列指定默认值,不填则为默认值,比如性别默认为“男”

create table info4 (name varchar(20),id int,sex  enum('男','女') default '男');
insert into info4(name,id) values('李四',1);

外键 foreign key 指定该行记录从属于主表中的一条记录,主要用于参照完整性

-- 外键关联
create table dep(id int primary key auto_increment,dep_name char(10));
create table emp(id int primary key auto_increment,name char(10),dep_id int,foreign key(dep_id) references dep(id));
desc emp;

create table 
emp1(id int primary key auto_increment,
name char(8),dep_id int,
foreign key(dep_id) references dep(id) 
on delete cascade  -- 级联删除
on update cascade); -- 级联更新

在这里插入图片描述

记录的增删改查

首先
单表查询:在一个表内完成查询
多表查询:多个表进行关联查询,如选课表,学生表,教师表
其次,数据表的记录操作,增删改。

总结

MySQL数据库是一个轻量的数据库管理工具,后续会使用SQL语句进行单表和多表查询,这是SQL语句的重点。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

额狮虎

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

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

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

打赏作者

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

抵扣说明:

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

余额充值