第一章 数据库基本操作
文章目录
前言
大家好啊!今天来为大家讲解数据库的一些基本操作~
一、创建数据库
创建之前,让我们先执行一条命令
show databases;

这条命令意思是显示这里的所有数据库,而图中下面框里出现的就是我们现有的库啦~
(注意:这些写是MySQL中自带的,不能删!!!)
那么,这一行小小的指令,有什么注意事项呢?
- 数据库的操作不区分大小写
- 语句的结尾需要' ;' ,也许细心的你在MySQL客户端试了一下,发现并没有问题,但在命令行的话,问题就会出现了~
OK,现在让我们简单的创建一个数据库吧 (就叫它tem)
create database 名字;
名字不可以和关键字一样,但实在想一样就加上反引号 ` 包起来(键盘左上角,~下面)

从图中可以看出,在create之后,我们show一下,表中就出现了tem的名字 !
图中show一行被选中,这可以在执行的时候只执行被选中的这一行
那现在我在执行一遍,会发生什么呢?

没错,最下面有一个错误 ! 这是告诉我们tem这个数据库已经创建过了 ,并且它让我们下面show那一行不能执行 !
在工作当中 , 我们经常会把好几个库一起创建,可这样出了一个问题就卡住了属实是有点头疼,怎么避免?
create database if not exists 名字;

" if not exists " 可以判断想创建的对象是否被创建过,创建过则不会再创建,并继续执行下一行~
小补充:
不知道大家在一开始学习 c 语言的时候有没有遇到过中文乱码的问题 ? 每到这个时候我们都会切换UTF-8 , 那数据库里面有没有这个切换功能呢?
有!
create database java119 charset utf8mb4(数据库提供的utf8完整版)
不过在MySQL8版本里,创建时不指定charset也会默认是utf8mb4 , 所以这里只做补充~
二、创建表
数据库是用来存储数据的 , 就像书房 , 而表就是书房里面的书架~
在打造书架之前要先选中一个房间 ,也就是先选中一个数据库
use 数据库名字;

下面出现了神秘绿色对号,我们成功了!
那么现在开始在"房子"里修"书柜"
create table 表名(列名 类型,列名 类型);
眼熟吧?和创建数据库代码逻辑一样
但更棘手的问题来了----先不说它名字在前面,类型在后面的"奇怪"造型,这数据库里的常用类型怎么写,和Java里一样吗?
| 数据类型(常用) | 作用 |
|---|---|
| bool | 表示对或错 |
| int | 整数类型 , 1 byte |
| bigint | 整数类型 , 8 byte |
| double | 小数类型,但平时多用下买你的decimal |
| decimal( int , int) | 小数类型,第一个int表示总长度,第二个int表示小数点后面的位数 |
| varchar( int , int ) | 字符串类型,用varchar( int , int )多于char( int ), varchar括号里面说的是最大长度,但char里面是指固大小,浪费空间 |
| text( int ) | 文本类型,也是存字符串的,可自动扩容 |
| datatime | 时间戳,以前人们喜欢用timestamp,但它支持到2038,快到期了不要用 |
我们在C语言中了解过无符号整型 , 但不要再用无符号整数了 !
现在尝试一下!!!

我们可以看到小面有三个对号,分别对应我们的三条语句,成功了!
那我们再原封不动再执行一遍呢?

报错了! 和数据库一样,表也不能重复.
create table if not exists 表名(列名 类型,列名 类型);
想不到吧,if not exists在创建表的时候也能用!
show tables;
查看使用的数据库里的表

成功执行到show这一行!!!
那怎么看表里的结构呢? (好像套娃啊)
也许有小伙伴脑子里一下子崩出来show , 嘿嘿 ,这回还真不是它 ,真相只有一个!
desc 表名;

三、注释
在Java里面 ,我闷喜欢用 // 来进行注释 ,这在 MySQL适用吗 ?
答案 : 不行的.
- MySQL里面,注释是用# 或/* */或 --来表示
- 使用 --的时候 , --后面要有一个空格!!!
- 创建表时 ,也可以用comment注释,后面内容用 '单引号 ' 引起来
- 用 # 或 --时,后面一整行都是注释 ,需要换行

四、修改与删除(危险SSR)
数据库里的信息都很重要 ,工作时一定不要随便删除!
1. 修改
(1) 修改数据库
alter database 数据库名 操作;
(2) 修改表名
alter table 表名 操作;
在我们创建数据库或者表的时候 , 就会提前想好它们该是什么结构 , 因此修改这一操作不用特殊记( 况且这是威胁操作 ) , 需要时搜就好
操作举例:
- alter table student add classId int after sex;
- alter table student modify name varchar(200);
- alter table student drop classId;
- alter table student rename column id to studentId;
2. 删除
(1)删除数据库
drop database 名字;
(2)删除表
drop table 表名;
这种行为也很危险 !!! 慎重 !!!
总结
好啦,以上就是今天的内容啦~
有数据类型,数据库创建展示,有表的创建展示,最后还有二者的修改和删除操作,注意 ,删除和修改是很危险的操作哦!
祝大家开心,再见 !