当前位置: 首页 > news >正文

【数据库】MySQL数据库基础

文章目录

  • 数据库介绍
    • 什么是数据库
    • 数据库分类
  • 数据库的操作
    • 准备工作
    • 显示当前的数据库
    • 创建数据库
    • 选择数据库
    • 删除数据库
  • 常用数据类型
    • 数值类型
    • 字符串类型
    • 日期类型
  • 表的操作
    • 创建表
    • 查看表结构
    • 删除表
  • 内容总结
  • 练习


数据库介绍

什么是数据库

存储数据用文件就可以了,为什么还要弄个数据库?
文件保存数据有以下几个缺点:
文件的安全性问题
文件不利于数据查询和管理
文件不利于存储海量数据
文件在程序中控制不方便

数据库存储介质:
磁盘
内存
为了解决上述问题,专家们设计出更加利于管理数据的软件——数据库,它能更有效的管理数据。数据库可以提供远程服务,即通过远程连接来使用数据库,因此也称为数据库服务器。

数据库分类

数据库大体可以分为 关系型数据库 和 非关系型数据库
关系型数据库(RDBMS):
是指采用了关系模型来组织数据的数据库。 简单来说,关系模型指的就是二维表格模型,而一个关系型数据库就是由二维表及其之间的联系所组成的一个数据组织。基于标准的SQL,只是内部一些实现有区别。
常用的关系型数据库如:

  1. Oracle:甲骨文产品,适合大型项目,适用于做复杂的业务逻辑,如ERP、OA等企业信息系
    统。收费。
    2. MySQL:属于甲骨文,不适合做复杂的业务。开源免费。
  2. SQL Server:微软的产品,安装部署在windows server上,适用于中大型项目。收费。

非关系型数据库:
(了解)
不规定基于SQL实现。现在更多是指NoSQL数据库,如:

  1. 基于键值对(Key-Value):如 memcached、redis
  2. 基于文档型:如 mongodb
  3. 基于列族:如 hbase
  4. 基于图型:如 neo4j

关系型数据库与非关系型数据库的 区别:
在这里插入图片描述

数据库的操作

准备工作

在这里插入图片描述
一些简单的操作我们可以使用命令行来演示,这会用到截图中的这个软件。在官网下载时这个可以顺便下载下来。

在这里插入图片描述
首先输入你自己设置的密码,然后就可以开始使用sql了。
在这里插入图片描述

显示当前的数据库

在这里插入图片描述

创建数据库

语法:

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: 指定数据库字符集的校验规则

示例:

在这里插入图片描述

在这里插入图片描述

选择数据库

在这里插入图片描述
select()database;执行后会显示当前正在使用的数据库,如图可见使用use 1111之后,1111这个数据库就开始使用了。

删除数据库

注:!!!删除数据库是一个非常危险的行为!!!!!!!!
在实际工作中,我们应该尽量避免删除数据库以防不好的后果发生。
语法:

DROP DATABASE [IF EXISTS] db_name;

在这里插入图片描述

常用数据类型

数值类型

在这里插入图片描述
在这里插入图片描述

字符串类型

在这里插入图片描述

日期类型

在这里插入图片描述

表的操作

创建表

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

field表示表名,datatype是表中数据的类型
在这里插入图片描述

查看表结构

在这里插入图片描述
直接desc+表名就可以查看。

删除表

语法:

在这里插入图片描述
在这里插入图片描述


内容总结

操作数据库:

-- 显示
show databases;
-- 创建
create database xxx;
-- 使用
use xxx;
-- 删除
drop database xxx;

常用数据类型:
INT:整型
DECIMAL(M, D):浮点数类型
VARCHAR(SIZE):字符串类型
TIMESTAMP:日期类型

操作表:

-- 查看
show;
-- 创建
create table 表名(字段1 类型1,字段2 类型2,...
);
-- 删除
drop talbe 表名;

练习

有一个商店的数据,记录客户及购物情况,有以下三个表组成:
商品goods(商品编号goods_id,商品名goods_name, 单价unitprice, 商品类别category, 供
应商provider)
客户customer(客户号customer_id,姓名name,住址address,邮箱email,性别sex,身份证
card_id)
购买purchase(购买订单号order_id,客户号customer_id,商品号goods_id,购买数量nums)

-- 创建数据库
create database bit_mall character set utf8mb4 collate utf8mb4_0900_ai_ci;
-- 创建表
drop table if exists goods;
create table goods(
goods_id bigint,
goods_name varchar(20),
unitprice int,
category varchar(10),
provider varchar(20)
);drop table if exists customer;
create table customer(
customer_id bigint,
name varchar(20),
address varchar(30),
email varchar(30),
gender bool,
card_id varchar(18)
);drop table if exists purchase;
create table purchase(
order_id bigint,
customer_id bigint,
goods_id bigint,
nums int
);

当我们写一些像这样的很长的代码时,我们可以用一些更方便的工具,例如:
在这里插入图片描述
这个在官网也可以下载。
在这里插入图片描述

我们写完代码后,可以直接点击所示按钮运行,也可以在命令行中运行:
在命令行中运行的话,需要先将代码保存成.sql文件才可以使用。
在这里插入图片描述
在这里插入图片描述
再重复创建就会报错了。

http://www.dtcms.com/a/520431.html

相关文章:

  • 四川省建设厅官方培训网站网站顶部
  • 图解Vue3 响应式,手动实现核心原理
  • 压缩与缓存调优实战指南:从0到1根治性能瓶颈(三)
  • 【设计模式】外观模式/门面模式(Facaed)
  • 矽塔 SA8206 36V/2.5A 过压/过流保护芯片
  • 莱州做网站网站建设给客户看的ppt
  • Windows - Maven 安装到 IDEA 配置全流程
  • java填充word模版导出word文件支持导出pdf,支持本地下载和网络下载,使用jar包
  • 网络安全:Apache Druid 安全漏洞
  • 宁波公司建站模板wordpress用户调用
  • 70%的RAG性能与分块有关
  • 足球网站开发外贸网站优化推广
  • Uncertainty-Aware Null Space Networks for Data-Consistent Image Reconstruction
  • 孝感网站seodw做网站的导航栏怎么做
  • LeetCode 每日一题 166. 分数到小数
  • 封面论文丨薄膜铌酸锂平台实现强耦合电光调制,《Light Sci. Appl. 》报道机器学习优化新范式
  • 做外贸找产品上哪个网站好flash素材网站有哪些
  • Rust内存安全:所有权与生命周期的精妙设计
  • 2510rs,稳定裸函数
  • 西安住房建设局网站首页企业网站 设计需求
  • LangChain:让大模型具备思考与行动能力的框架
  • MySQL 及 SQL 注入详细说明
  • 医院移动护理系统源码,JAVA移动护理系统源码,医院移动护士站源码
  • 网站建设营销型新型塑料建筑模板图片
  • Linux 有哪些功能相似的命令
  • 外贸推广网站冲压加工瑞安有做网站吗
  • 【开题答辩实录分享】以《租房小程序的设计和实现》为例进行答辩实录分享
  • vscode debug Transformer源码说明
  • 仓颉语言核心特性深度解析:类型系统与内存安全实践
  • IP 地址 (Internet Protocol Address) 详细介绍