数据库基础

数据库基础

一个服务器(DBMS 数据库管理系统)上能储存多个数据库,一个数据库中能储存多个表,一个表中能添加多个记录

主键 primary key
这里的主键是student_id,不得重复

student_id
name major
1 小黑 生物
2 小白 历史
3 小绿 英语
4 小黄 生物

关系型数据库

就是由多个有关系的二维表组成的数据库

有关系的二维表
如下面的例子,第一个表是员工表,第二个表是公司表,二者通过了第一个表的dept_id与与第二个表的id相互连接

id name job dept_id
1 猪头 CTO 2
2 秃头 教师 1
3 贵头 学生 3
id name
1 数字电路公司
2 知识图谱公司
3 人工智能公司

SQL的通用语法

mysql语句不区分大小写,但是建议关键字使用大写,统一规范
单行注释可以使用--表示 其中MySQL特有的是#
多行注释使用/*注释内容*/

SQL分类

  • DDL语句,Data Definition Language 数据定义语言,用来定义数据库对象
  • DML语句,Data Manipulation Language 数据操作语言,增删查改数据表中的数据
  • DQL语句,Data Query Language 数据查询语言
  • DCL语句,Data Control Language 数据控制语言,用来创建数据库用户、 控制数据库的访问权限的语言

DDL

  • 查询所有数据库 SHOW DATABASES;
  • 创建数据库 CREATE DATABASE [IF NOT EXISTS] 数据库名 [DEFAULT CHARSET 字符集] [COLLATE 排序规则];
  • 删除数据库 DROP DATABASE [IF NOT EXISTS] 数据库名;
注意这个地方的EXISTS后面的S

SHOW DATABASES; --查询数据库
CREATE DATABASE student; --创建数据库
/*如果再次执行 创建名为student的数据库会报错*/
CREATE DATABASE IF NOT EXISTS student; --如果执行时在数据库的名字前面加上IF NOT EXISTS 就不会报错,但是会弹出警告,且数据库没有任何变化
CREATE DATABASE AIstudent DEFAULT CHARSET utf8mb4;

注意,这个地方使用的字符集是utf8mb4,因为utf8支持的是三个字节的字符,但是很多中文较为生僻的是四个字符,比如表情符号,或者是历史汉字𠀀
其次,我创建这个名称为AIstudent的数据库的时候发现了,我创建完之后查询结果是aistudent,这是为什么呢?

我查询了一下,这种情况我们需要查询我们的数据库名和表名的大小写参数lower_case_table_names

我们通过下面的语句查看大小写设置

SHOW VARIABLES LIKE 'lower_case_table_names';

我的电脑返回值是如下所示

image

结果 操作系统
0 大小写敏感 Linux
1 统统转换为小写 Windows
2 按照原样储存,但是只是显示和比较时候变成了小写 MacOS

很明显,我的Windows电脑上的参数是1,它给我统统转换成了小写!

那我们怎么修改这个参数呢?

就不告诉你,改参数是个很危险的行为,想要的话自己去查,我不背这个锅...

删除数据库和创建数据库是一个道理,只不过需要注意一下关键词DROP,不要记混

使用(进入)数据库 USE 数据库名称;
进入数据库后我们使用语句

SELECT DATABASE();

即可查看我们当前所在的数据库名,使用这个操作时候注意后面有一个括号

既然我们已经知道了怎么进入数据库了,那么我们就引出了一个新的问题:如何退出数据库

  • 切换数据库,即便你已经进入了一个数据库了,你仍然可以在当前数据库中切换到另外一个数据库
USE another_database;
  • 上述操作是不退出sql下的操作,那么退出sql呢?
exit;

quit;

\q;
posted @ 2025-09-26 00:38  AttaSayyid  阅读(5)  评论(0)    收藏  举报