零基础学习MySQL---MySQL入门

顾得泉: 个人主页

个人专栏: 《Linux操作系统》 《C++从入门到精通》 《LeedCode刷题》

键盘敲烂,年薪百万!


一、什么是数据库

问:存储数据用文件就可以了,为什么还要弄个数据库呢?

这就不得不提到文件保存数据的几个缺点了:

1.文件的安全性问题

2.文件不利于数据查询和管理

3.文件不利于存储海量数据

4.文件在程序中控制不方便

为了解决上述问题,专家们设计出更加利于管理数据的东西------数据库,它能更有效的管理数据。数据库的水平是衡量一个程序员水平的重要指标。


二、主流数据库介绍

1.MySQL

特点:MySQL 是一种流行的开源关系型数据库,由 MySQL AB 公司开发。它支持多线程、高并发,且安装和管理相对简单,广泛应用于网站和应用程序的后端存储。

应用场景:适用于中小型企业的网站、电子商务平台、用户管理系统等。

2.Oracle

特点:Oracle 是由 Oracle 公司开发的一种关系型数据库管理系统,支持大型事务处理、数据分析和报告功能。它以高性能和高可靠性而著称,适用于需要大量数据处理的关键业务应用。

应用场景:广泛用于金融、电信、政府等需要高可靠性和强一致性的行业。

3.Microsoft SQL Server

特点:Microsoft SQL Server 是微软开发的一种关系型数据库管理系统,主要运行在 Windows 平台上。它提供了丰富的图形用户界面管理工具,并与其他微软产品如 .NET 框架紧密集成。

应用场景:常用于 .NET 环境下的应用程序以及企业级的数据库管理。

4.PostgreSQL

特点:PostgreSQL 是一种功能强大的开源关系型数据库,以其高扩展性和标准 SQL 兼容性而受欢迎。它支持事务、存储过程和多种类型的数据存储,包括地理空间数据。

应用场景:适用于需要复杂查询和大规模数据处理的应用场景,如地理信息系统、银行系统等。

5.MongoDB

特点:MongoDB 是一种领先的 NoSQL 文档型数据库,采用 BSON 数据格式存储数据。其灵活的架构适合处理大量的结构化和半结构化数据。

应用场景:广泛用于内容管理系统、实时广告推送、物联网应用等场景。

6.Redis

特点:Redis 是一个开源的高级键值存储数据库,它支持字符串、哈希、列表、集合和有序集合等多种数据结构。Redis 通常用作数据库、缓存和消息代理。

应用场景:适用于需要快速读写操作的场合,如会话缓存、实时分析、游戏服务器等。


三、MySQL基本使用

1.连接服务器

(注:我使用的是Centos环境练习)

输入:

sql 复制代码
mysql -h 127.0.0.1 -P 3306 -u root -p

输出:

2.服务器、数据库、表三者关系

所谓安装数据库服务器,只是在机器上安装了一个数据库管理系统程序,这个管理程序可以管理多个数据库,一般开发人员会针对每一个应用创建一个数据库。

为保存应用中实体的数据,一般会在数据库中创建多个表,以保存程序中实体的数据。

数据库服务器、数据库和表的关系如下:

3.简单使用

1.查看数据库

sql 复制代码
show databases;

注:语句结束后要有分号!!!

2.创建数据库

sql 复制代码
create database hellomysql;

3.使用数据库

sql 复制代码
use hellomysql;

4.创建数据库表

sql 复制代码
create table student(
    id int,
    name varchar(32),
    gender varchar(2)
);

注:表结构最后一个元素不加逗号!!!

5.表中插入数据

sql 复制代码
insert into student (id, name, gender) values (1, '顾得泉', '男');
insert into student (id, name, gender) values (2, '喜羊羊', '男');
insert into student (id, name, gender) values (3, '美羊羊', '女');

6.查询表中的数据

sql 复制代码
select * from student;

**结语:**关于本次MySQL入门的分享到这里就结束了,后续还会持续更新。希望本篇文章的分享会对大家的学习带来些许帮助,如果大家有什么问题,欢迎大家在评论区留言~~~

相关推荐
计算机平台作业答案讲解1 小时前
QT实现GIF动图显示(小白版,可直接copy使用)
服务器·开发语言·数据结构·数据库·c++·qt·动态规划
誰能久伴不乏2 小时前
使用 Qt 实现自定义拖动窗口
开发语言·数据库·qt
TriplesGoldWater2 小时前
MySQL期末答辩—仓库管理系统
android·数据库·mysql
fmk10232 小时前
从0开始搭建Spring-Cloud微服务项目
数据库·mysql
毕小宝2 小时前
H2 Database Console未授权访问漏洞封堵
数据库·h2
Rverdoser2 小时前
Mongodb地理信息数据查询
数据库·mongodb
chenyang_883 小时前
MySQL——statement对象详解
数据库·mysql·oracle
#学习的路上3 小时前
Bean的管理
java·前端·数据库
a_zhee13 小时前
[Redis]哨兵机制
数据库·redis·缓存
GodGump3 小时前
DB-GPT 文档切分报错
数据库·gpt