MySQL数据库基础

目录

[1. 数据库的操作](#1. 数据库的操作)

1.1创建数据库

1.2显示当前的数据库

1.3使用数据库

1.4删除数据库

[2. 常用数据类型](#2. 常用数据类型)

[2.1 数值类型](#2.1 数值类型)

2.2字符串类型

2.3日期类型

3.表的操作

3.1创建表

3.2查看表

3.3查看表结构

[3.4 删除表](#3.4 删除表)


**1.**数据库的操作

数据库操作,此处 数据库指的是"数据集合",是逻辑上的概念,一个mysql服务器上有多个这样的数据集合。

1.1创建数据库

1.创建名为 db_test1 的数据库
create database db_test1;
说明:当我们创建数据库没有指定字符集和校验规则时,系统使用默认字符集: utf8 ,校验规则
是: utf8_ general_ ci

2.如果系统没有 db_test2 的数据库,则创建一个名叫 db_test2 的数据库,如果有则不创建

create database if not exists db_test2;

3.创建一个使用utf8mb4字符集的 db_test3 数据库
create database db_test3 charset utf8mb4;
说明: MySQL 的 utf8 编码不是真正的 utf8 ,没有包含某些复杂的中文字符。 MySQL 真正的 utf8 是
使用 utf8mb4 ,建议大家都使用 utf8mb4

1.2显示当前的数据库

show databases;

1.3使用数据库

use 数据库名;

1.4删除数据库

drop database (if exists )db_test1;
说明 : 数据库删除以后,内部看不到对应的数据库,里边的表和数据全部被删除


**2.**常用数据类型

2.1****数值类型

分为整型和浮点型:

内容扩展:

(1)整型类型

数值类型可以指定为无符号(unsigned),表示不取负数。

1字节(bytes)= 8bit。
对于整型类型的范围:

  1. 有符号范围:-2^(类型字节数*8-1)到2^(类型字节数*8-1)-1,如int是4字节,就
    是-2^31到2^31-1
  2. 无符号范围:0到2^(类型字节数*8)-1,如int就是2^32-1 尽量不使用unsigned,对于int类型可能存放不下的数据,int unsigned同样可能存放不下,与其 如此,还不如设计时,将int类型提升为bigint类型。

(2)浮点类型

float和double存在一个非常严重的缺陷,数据不能精准储存。

因此比较两个浮点数,不能用"==",而需要通过作差小于一给误差值的方法,进行判断。

如果我们想要精确数据,我们可以decimal或numeric;

它们与float和double相比,付出了更多的空间,运算时花费了更多的时间,但保存的数据更精准。

2.2字符串类型

内容说明:

(1)varchar(size)中的size表示的是最大长度。

比如:size==1024,表示此时最多储存1024个字符。

(2)text与varchar(size)相比仅无法确定长度上限。

(3)mediumtext仅是在text的基础上大小更大。

注意:

(1)一个汉字也算一个字符,varchar(10)表示可存10给汉字。

(2)前三个类型,都是存储字符串的(文本数据),blob存储的是二进制文件。

内容扩展:

(1)文本文件存储的是标准字符(在字符码上可以查到的数据)。

(2)二进制文件可以存储任意数据(视频,音频,图片)。

2.3日期类型


3.表的操作

表操作的前提都是要选中数据库

3.1创建表

创建表的时候,必需要描述出表包含哪些列,每一列的类型,名字,后续往表中存放的数据也要遵守这里的规则。

create table 表名(列名 类型,列名 类型......)

注意:是 列名 类型,而不是 类型 列名

题目1.1:

设计一张商品表,包含以下字段:商品名称、商品价格、商品库存、商品描述

可以使用comment增加字段说明。

create table stu_test (
id int ,
name varchar ( 20 ) comment ' 姓名 ' ,
password varchar ( 50 ) comment ' 密码 ' ,
age int ,
sex varchar ( 1 ),
birthday timestamp ,
amout decimal ( 13 , 2 ),
resume text
);

3.2查看表

show tables;

以上题1.1为例

3.3查看表结构

desc 表名 ;

以上题1.1为例

补充:

3.4 删除表

drop talbe 表名 ;

扩展:


以上为我个人的小分享,如有问题,欢迎讨论!!!

都看到这了,不如关注一下,给个免费的赞

相关推荐
凯哥Java8 分钟前
优化批处理流程:自定义BatchProcessorUtils的设计与应用
java·数据库·mysql
拉玛干12 分钟前
社团周报系统可行性研究-web后端框架对比-springboot,django,gin
数据库·python·spring·golang
编织幻境的妖24 分钟前
MySQL/Redis集群等数据库的管理、配置、优化、备份恢复、异地同步、数据迁移、安全防护的50道运维面试题
数据库·redis·mysql
不是仙人的闲人25 分钟前
Qt日志输出及QsLog日志库
开发语言·数据库·qt
叫我DPT35 分钟前
redis
数据库·redis·缓存
hzmscut1 小时前
寄存器二分频电路
其他
大王只是带我巡了个山1 小时前
优化 OR 条件过多导致的查询超时
数据库·mysql·join·or 优化·or 超时·查询超时
木鬼与槐1 小时前
MySQL高阶1892-页面推荐2
mysql
gma9992 小时前
MySQL程序
数据库·mysql
神秘的土鸡2 小时前
Linux中Docker容器构建MariaDB数据库教程
linux·运维·服务器·数据库·docker·mariadb