数据库的基本操作
一、数据库的基本概念
1、数据:Data:描述事物的符号记录。注意,数据包括数字、文本、声音、图片等。
2、数据库:Database:DB。存储数据的仓库。比较官方的解释:长期存储在计算机内的有组织的 可共享的 大量数据的集合。
3、数据库管理系统:Database Management System:DBMS。是一种操纵和管理数据库的大型软件,用于建立、使用和维护数据库。
常见的数据库管理系统:MySQL、Mariadb、Oracle、SqlServer、MongoDB、Redis等。
4、数据库系统:Database system:DBS。应用了数据库管理系统的系统。通常由:数据库、数据库管理系统、应用系统组成。
二、数据库的分类
l 关系型数据库:MySQL、Mariadb、Oracle、SqlServer等。
关系型数据库的特点:以表的方式存储数据。(以sql语言来管理数据库的。)
l 非关系型数据库:MongoDB、Redis等。
非关系型数据库的特点:不是以表的方式存储数据。以文档或键值对等形式存储数据。
三、数据库的基本操作
1、SQL的概念和分类
SQL:Structured Query Language。结构化查询语言。用于操作和管理关系型数据。
SQL语言的分类:
----DQL:Data Query Language。数据查询语言。用于检索数据库内的数据。这部分语法最复杂和灵活。是我们学习的重点。select
----DML:Data Manipulate Language。数据操作语言。用于改变数据库内的数据。insert,delete,update
----DDL:Data Definition Language。数据库定义语言。用于定义数据结构。create、drop、alter
----DCL:Date Control Language。数据库控制语言。(数据库管理员 才会用到)grant、revoke
2、数据库的管理
1.创建数据库 —— create database
语法:create database 数据库名;
例 :create database db1;
2.查询(当前连接下的所有)数据库:—— show databases
例:show databases;
3.使用数据库:—— use
语法:use 数据库名;
例:use db1;
4.删除数据库:—— drop database
语法:drop database 数据库名;
例:drop database db1;
3、表的管理
建表的简单语法:
create table 表名(
字段名1 字段1的数据类型,
字段名2 字段2的数据类型,
.........
字段名n 字段n的数据类型
);
1.常用的数据类型:数值、字符串、日期
l 数值:
整型:int
浮点型:float(单精度)、double(双精度)(float存放7位十进制数,double存放16位十进制数)
定点型:decimal
l 字符串:
固定长度字符串:char
可变长度字符串:varchar
枚举型:enum
l 日期:
日期型:date 2020-11-11
时间型:time 14:02:05
日期时间型:datetime 2020-11-11 14:02:05
例:
create table student(
id int,
name varchar(20),
gender enum('男','女'),
sdate date
);
2.常用的约束:
约束:指的是对表中的字段内的数据进行一系列的规定和限制。约束的目的在于保证数据的完整性(正确的,有意义的)。
常用的约束如下:
l 主键约束:primary key。主键指主关键字,它是表中一个或多个字段,它的值用于唯一地标识表中的某一条记录。那么这个字段首先不允许为空、不允许重复。
l 非空约束:not null。不允许为空null。
l 唯一约束:unique。该字段不允许重复。
l 默认值约束:default。表示插入数据时若没有为该字段赋值,则数据库会自动插入默认值。
l 自增约束:auto_increment。表示插入数据时若没有为该字段赋值,则数据库会自动插入数值(在上一次生成的数上+1)。
l 外键约束:foreign key。某个表A的字段,如果同时也是另外一张表B的主键,那么这个字段就称为该表A的外键(外键约束创建在表A内)。主键所在表的叫主表,外键所在表就叫从表。外键是用来建立主表和从表之间关联关系。为两张表建立联接,从而约束两张表中数据的完整性、一致性。
例 :
create table studentpro(
id int primary key,
name varchar(20) not null,
email varchar(50) unique,
address varchar(50) default 'shanghai'
);
3.数据库常用名词解析
4.查看表结构 —— desc
语法:desc 表名;
例:
desc db1;
5.显示数据库中的所有表 —— show tables
例: show tables;
6.表的修改 —— alter table
l 修改表名 —rename
语法:alter table 旧表名 rename to 新表名;
例: alter table stu rename to s1;
l 修改字段名 —change
语法:alter table 表名 change 旧字段名 新字段名 新的数据类型;
例: alter table s1 change name username varchar(20);
l 添加字段 — add
语法:alter table 表名 add 字段名 字段类型;
例: alter table s1 add phonenum int;
l 删除字段 — drop
语法:alter table 表名 drip 字段名;
例: alter table s1 drop phonenum;
7.表的删除:—— drop table
语法:drop table 表名;
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 【.NET】调用本地 Deepseek 模型
· CSnakes vs Python.NET:高效嵌入与灵活互通的跨语言方案对比
· DeepSeek “源神”启动!「GitHub 热点速览」
· 我与微信审核的“相爱相杀”看个人小程序副业
· Plotly.NET 一个为 .NET 打造的强大开源交互式图表库