MySOL数据库基础

本文介绍了MySQL的基本操作,包括创建数据库(注意字符集选择)、查看和切换数据库、创建和删除表,以及数据类型如VARCHAR和时间日期类型的使用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

写在前面

本篇博客是有关于MySQL的一些基本操作,若有错误烦请私信我,将会加以改正.

1.数据库的操作

1.1创建数据库

create database 数据库名

注意:

  1. create,database...相当于“关键字”
  2. SQL 的关键字 不区分大小写的
  3. 创建的数据库的名字,可以随便起的,但是不能重复!!
  4. 单词之间至少有一个空格
  5. 在命令行中输入的必须以";"结尾  

创建成功

在这里[]中是可选项

IF NOT EXISTS :如果不存在才创建,如果存在,则什么都不干、

例:此时在我的MySQL服务器中已经存在名为java108的数据库了,如果再次创建一个名为java108的数据库则MySQL会报一个错误

那么如果我们加入 if not exists 则不会报错

这个功能主要是在批量执行SQL,把很多SQL写到一个文件中,如果中间有一个SQL报错了,那么执行就会停止

为了不影响后面SQL的执行,才会使用 IF NOT EXISTS那么它是什么呢?(设置一个字符集)在创建一个数据库的同时指定数据库的字符集

字符集:就是针对汉字进行编码

对于汉字我们主要有两套常用的编码方式

1.gbk:VS的编码是跟随系统的,而windowns简体中文版是gbk编码的,gbk编码一个汉字2个字节;

2.utf8:这个是我们最常用的编码方式,一个汉字3个字节;

目前主流的是utf8,主要是这个东西可以表示更多的内容(除了汉字之外,其他国家的文字符号也可以表示,范围更广)

为什么要在MySQL中手动设置字符集?

答:在MySQL当中默认字符集是拉丁文,是没办法表示中文的.

话又说回来,在这里手动设置字符集是非常关键的,如果我们后续需要添加中文,那么如果不是utf8/gbk则会出现乱码

当然了,如果你觉得character set太长你可以用他的简写:charset

当然了在MySQL当中还有可能见到:utf8mb4

这又是什么东西呢?

其实MySQL的utf8是残缺的,主要残缺了一些表情,而utf8mb4是后来补充上去的完整版

1.2查看所有数据库

show databases;

可能有多个数据库,因此使用 s 后缀.

红色方框所框起来的就是我们刚刚创建的数据库,当然了方框以外的是属于系统自带的数据库(不要乱改!

1.3选中指定数据库

use 数据库名;

一旦选中了某个指定的数据库,后续操作就都是针对该数据库展开

1.4删除数据库

drop database 数据库名;

删除成功

但是需要注意的是,这个操作是非常危险的!!

案例:20*500,虽然说20分钟后数据回复了,但是在这20分钟内,每一个客户信息都让公司损失了1万,然而他删了187个,在这187个当中有两个大客户,总的来说:上海一套房。

2.表的操作

2.1创建表

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

comment:是注释的意思

但是comment是在创建表的时候的一种专属的注释(不推荐使用)

SQL中若想使用注释建议使用

#

或者

--

和创建数据库类似,我们在创建表和删除表的时候也可以写入

IF EXISTS 和 IF NOT EXISTS 来防止报错

类型:MySQL本身也支持很多数据类型

数字类型

M是有效数字的长度,D是小数点后的位数

比如设定:FLOAT(3,1)

99.3√

89.1√

1.23×(小数点后两位)

100.2×(有效数字四位)

DECIMAL是可以精确表示小数的

double 和 float 是不能精确表示小数的(详情请见C_深度刨析数据在内存中的存储)

因此DECIMAL就是为了解决上述问题,但DECIMAL也为此付出了代价

1.DECIMAL的内存占用更多

2.DECIMAL的计算速度更慢

字符串类型

VARCHAR(SIZE):属于可变长的字符串

SIZE:是它的最大长度,单位是字符(不是字节!!)

例如:varchar(10)=>最多十个字,哪怕是汉字,也是十个

时间日期

TIMESTAMP:时间戳

计算机中经常表示时间的一种方式

以1970/1/1/0.00为基准,表示当前时间与基准时间的差值

但是这个类型最大的问题就是他是4个字节的,范围有限所以更建议使用DATETIME

创建表的时候要提前想好是什么类型的,以后存放的数据都要符合这个类型

注意这两个地方要有空格

2.2查看数据库中的所有表

show tables;

2.3查看指定表的表结构

desc 表名;

describe:描述

这里的11表示的是打印的时候最多占11个字符这么宽(和存储范围无关)

2.4删除表

drop table 表名;

删除表,就相当于删除表中的所有的数据,和删除数据库差不多,都是非常危险的操作

(PS:都看到这里了,不妨点个赞吧)

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值