Mysql数据库基础

1. 数据库的操作

1.1 显示当前的数据库

SHOW DATABASES;

1.2 创建数据库

语法:

CREATE DATABASE [IF NOT EXISTS] db_name [create_specification [, 
create_specification] ...]
create_specification:
 [DEFAULT] CHARACTER SET charset_name
 [DEFAULT] COLLATE collation_name

说明:

大写的表示关键字

[] 是可选项

CHARACTER SET: 指定数据库采用的字符集

COLLATE: 指定数据库字符集的校验规则

示例:

创建名为 db_test1 的数据库

CREATE DATABASE db_test1;

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

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

CREATE DATABASE IF NOT EXISTS db_test2;

如果系统没有 db_test 的数据库,则创建一个使用utf8mb4字符集的 db_test 数据库,如果有则 不创建

CREATE DATABASE IF NOT EXISTS db_test CHARACTER SET utf8mb4;

说明:MySQL的utf8编码不是真正的utf8,没有包含某些复杂的中文字符。MySQL真正的utf8是 使用utf8mb4,建议大家都使用utf8mb4

1.3 使用数据库

use 数据库名;

1.4 删除数据库

语法:

DROP DATABASE [IF EXISTS] db_name;

说明:

数据库删除以后,内部看不到对应的数据库,里边的表和数据全部被删除

drop database if exists db_test1;
drop database if exists db_test2;

2. 常用数据类型

2.1 数值类型:

数据类型大小说明
BIT[ (M) ]M指定位 数,默认 为1二进制数,M范围从1到64, 存储数值范围从0到2^M-1
TINYINT1字节
SMALLINT2字节
INT4字节
BIGINT8字节
FLOAT(M, D)4字节单精度,M指定长度,D指定 小数位数。会发生精度丢失
DOUBLE(M, D)8字节
DECIMAL(M, D)M/D最大 值+2双精度,M指定长度,D表示 小数点位数。精确数值
NUMERIC(M, D)M/D最大 值+2和DECIMAL一样

2.2 字符串类型

数据类型大小说明
VARCHAR (SIZE)0-65,535字节可变长度字符串
TEXT0-65,535字节长文本数据
MEDIUMTEXT0-16 777 215字节中等长度文本数据
BLOB0-65,535字节二进制形式的长文本数据

2.3 日期类型

数据类型大 小说明
DATETIME8字节范围从1000到9999年,不会进行时区的 检索及转换。
TIMESTAMP4字节范围从1970到2038年,自动检索当前时 区并进行转换。

3. 表的操作

需要操作数据库中的表时,需要先使用该数据库:

use db_test;

3.1 查看表结构

desc 表名;

 

3.2 创建表

语法:

CREATE TABLE table_name (
 field1 datatype,
 field2 datatype,
 field3 datatype
);

可以使用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.4 删除表

语法格式:

DROP [TEMPORARY] TABLE [IF EXISTS] tbl_name [, tbl_name] ...

示例:

-- 删除 stu_test 表
drop table stu_test;
-- 如果存在 stu_test 表,则删除 stu_test 表
drop table if exists stu_test;

练习:

有一个商店的数据,记录客户及购物情况,有以下三个表组成:

     1、商品goods(商品编号goods_id,商品名goods_name, 单价unitprice, 商品类别category, 供 应商provider)

     2、客户customer(客户号customer_id,姓名name,住址address,邮箱email,性别sex,身份证 card_id)

     3、购买purchase(购买订单号order_id,客户号customer_id,商品号goods_id,购买数量nums)

-- 创建数据库
create database if not exists store;

-- 使用数据库
use store;


-- 创建数据库表
-- 商品
create table if not exists goods
(
    goods_id   int comment '商品编号',
    goods_name varchar(32) comment '商品名称',
    unitprice  int comment '单价,单位分',
    category   varchar(12) comment '商品分类',
    provider   varchar(64) comment '供应商名称'
);
-- 客户
create table if not exists customer
(
    customer_id int comment '客户编号',
    name        varchar(32) comment '客户姓名',
    address     varchar(256) comment '客户地址',
    email       varchar(64) comment '电子邮箱',
    sex         bit comment '性别',
    card_id     varchar(18) comment '身份证'
);
-- 购买
create table if not exists purchase
(
    order_id    int comment '订单号',
    customer_id int comment '客户编号',
    goods_id    int comment '商品编号',
    nums        int comment '购买数量'
);

show tables;

  • 7
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
MySQL是一种开源的关系型数据库管理系统,它是由瑞典MySQL AB公司开发的,后来被Oracle收购。MySQL数据库基础包括以下几个方面: 1. 数据库的创建和删除:可以使用CREATE DATABASE语句创建数据库,使用DROP DATABASE语句删除数据库。 2. 表的创建和删除:可以使用CREATE TABLE语句创建表,使用DROP TABLE语句删除表。 3. 数据的插入、更新和删除:可以使用INSERT INTO语句插入数据,使用UPDATE语句更新数据,使用DELETE FROM语句删除数据。 4. 数据的查询:可以使用SELECT语句查询数据,可以使用WHERE子句过滤数据,可以使用ORDER BY子句对数据进行排序。 5. 数据库的备份和恢复:可以使用mysqldump命令备份数据库,可以使用mysql命令恢复数据库。 6. 数据库的权限管理:可以使用GRANT语句授予用户权限,可以使用REVOKE语句撤销用户权限。 7. 数据库的优化和性能调优:可以使用EXPLAIN语句分析查询语句的执行计划,可以使用索引来提高查询性能。 以上是MySQL数据库基础的一些内容,通过学习这些知识可以帮助你更好地理解和使用MySQL数据库。\[1\] #### 引用[.reference_title] - *1* [MySQL数据库基础命令](https://blog.csdn.net/Snowflake1997/article/details/122956153)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值