【MySQL】数据库基础

文章目录


1、什么是数据库

数据库是一类软件,是对数据进行高效的组织,数据库是基于数据结构实现出来的软件,内部会用到很多数据结构的东西
数据库大概可以分为两类:
关系型数据库: MySQL,Oracle,SQLServer,SQLite...
非关系型数据库: Redis,MongoDB,HBase...
注意: 上述所说的都是软件,以下所讲的都是SQL这门编程语言,去操作MySQL数据库

2、数据库的操作

数据库的写法不分大小写

2.1显示当前数据库

MySQL自带了很多系统库,我们使用show databases;就能看到当前所有的数据库

sql 复制代码
mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| java_code          |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
5 rows in set (0.01 sec)

上述除了java_code是创建的,其余都是MySQL自带的系统库

2.2创建数据库

sql 复制代码
create database 数据库;

创建一个名叫dome的数据库

sql 复制代码
mysql> create database dome;
Query OK, 1 row affected (0.00 sec)

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| dome               |
| java_code          |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
6 rows in set (0.00 sec)

我们也可以指定字符集创建数据库

sql 复制代码
create database 数据库 charset 字符集;

注意:数据库的名字不能是SQL的关键字

2.3选中数据库

sql 复制代码
use 数据库名

一个 MySQL 服务器上,数据库是可以有多个的,在对数据库进行操作的时候我们就要先选中对哪个库进行操作

2.4删除数据库

sql 复制代码
drop database 数据库名;

注意:删除数据库是一个非常危险的操作

3、常用数据类型

3.1数值类型

分整型和浮点型

3.2字符串类型

3.3日期类型

上述类型虽然多但是我们主要掌握四个类型即可:
表示整数:int
表示小数:double
表示字符串:varchar
表示时间日期:datetime

其余类型简单了解

4、表的操作

在进行以下操作时,要选中数据库,后续我们都针对dome这个数据库进行操作

4.1创建表

sql 复制代码
create table 表名(列名 类型,列名 类型...);

注意:我们定义字段是字段名在前 字段类型在后,中间用空格隔开,每列中间用逗号隔开

举例如下:

sql 复制代码
mysql> create table student(id int, name varchar(20));
Query OK, 0 rows affected (0.02 sec)

同一个表中是不能存在两张名字相同的表,而且表名和列名不能和SQL关键字相同,如果表名和列名与关键字相同就要使用反引号引起来

4.2显示表

sql 复制代码
mysql> show tables;
+----------------+
| Tables_in_dome |
+----------------+
| student        |
+----------------+
1 row in set (0.00 sec)

通过以上代码就可以查看到该数据库中的所有表

4.3查看表的结构

sql 复制代码
desc 表名;

举例如下:

sql 复制代码
mysql> desc student;
+-------+-------------+------+-----+---------+-------+
| Field | Type        | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| id    | int(11)     | YES  |     | NULL    |       |
| name  | varchar(20) | YES  |     | NULL    |       |
+-------+-------------+------+-----+---------+-------+
2 rows in set (0.00 sec)

上述Field表示字段也可以叫做列

Type表示类型(11)表示在控制台中显示这一列的数值的时候,最多占11个字符这样的位置

(20),这里面的20并不是表示20个字节,而是表示20个字符,具体大小取决于你数据库设定的字符集,要知道不同的字符集设定的每个字符大小可是不一样的

其余几个我们会在后续慢慢讲解

4.4删除表

sql 复制代码
drop table 表名;

注意:删除表和删除库一样都是危险的操作

相关推荐
wrx繁星点点8 分钟前
事务的四大特性(ACID)
java·开发语言·数据库
小小娥子38 分钟前
Redis的基础认识与在ubuntu上的安装教程
java·数据库·redis·缓存
DieSnowK39 分钟前
[Redis][集群][下]详细讲解
数据库·redis·分布式·缓存·集群·高可用·新手向
计算机学姐1 小时前
基于SpringBoot+Vue的高校运动会管理系统
java·vue.js·spring boot·后端·mysql·intellij-idea·mybatis
-XWB-1 小时前
【MySQL】数据目录迁移
数据库·mysql
老华带你飞1 小时前
公寓管理系统|SprinBoot+vue夕阳红公寓管理系统(源码+数据库+文档)
java·前端·javascript·数据库·vue.js·spring boot·课程设计
我明天再来学Web渗透2 小时前
【hot100-java】【二叉树的层序遍历】
java·开发语言·数据库·sql·算法·排序算法
Data 3172 小时前
Hive数仓操作(十一)
大数据·数据库·数据仓库·hive·hadoop
吱吱鼠叔2 小时前
MATLAB数据文件读写:2.矩阵数据读取
数据库·matlab·矩阵
掘根2 小时前
【MySQL】Ubuntu环境下MySQL的安装与卸载
数据库·mysql·centos