MySQL简介与基本用法

MySQL的简介:

MySQL是一种开源的关系型数据库管理系统(RDBMS),它是最流行的数据库之一。MySQL是由瑞典的MySQL AB公司开发的,现在被Oracle公司拥有和维护。

MySQL使用标准的SQL语言进行数据库操作,具有高可用性、可扩展性、可移植性等优点。它支持多种操作系统,包括Windows、Linux和Unix等,也支持多种编程语言,如C、C++、Java、Python等。

MySQL的功能非常强大,包括创建和管理数据库、表、索引和约束,支持事务和存储过程,可以对数据进行高效的查询和分析,还可以对数据进行备份和恢复等操作。同时,MySQL也支持多种存储引擎,如MyISAM、InnoDB等,可以满足不同的需求。

由于MySQL具有开源、易用、可扩展等优点,被广泛应用于Web应用程序、企业应用、科学研究等领域,例如Facebook、Twitter、YouTube等知名网站都使用了MySQL数据库。

MySQL中不同版本的优点与缺点比较:

MySQL的不同版本之间在功能和性能上有所不同,下面是一些版本之间的比较:

1、MySQL 5.6

MySQL 5.6版本是MySQL的一次重大更新,其中包含了很多新功能和改进。它引入了全文搜索、InnoDB存储引擎的性能提升、复制性能和可靠性的改进、查询性能优化等。MySQL 5.6版本还改进了一些安全性方面的问题,提供了更好的性能和可用性。

缺点:在处理大量数据时,可能会出现性能问题。

2、MySQL 5.7

MySQL 5.7版本是MySQL的另一次重大更新,增加了一些新功能和性能改进。这些改进包括JSON数据类型、自动增量列、InnoDB存储引擎的性能提升和改进、增强了查询优化器和索引性能等。

缺点:MySQL 5.7版本在处理高并发和大量数据时可能会存在性能问题。

3、MySQL 8.0

MySQL 8.0版本是MySQL的最新版本,引入了很多新功能和性能提升。这些改进包括JSON数据类型的增强、支持空间数据类型、增加了Window函数、索引优化器的改进、InnoDB存储引擎的性能提升、增加了多源复制等。

优点:MySQL 8.0版本在处理大量数据时有很好的性能表现,并且提供了更好的可扩展性。

缺点:与较老版本的MySQL相比,MySQL 8.0版本的某些功能可能需要更高的系统要求,因此在安装和使用时需要更多的资源。

总的来说,MySQL的不同版本之间在功能和性能上有所不同,需要根据具体的需求来选择。如果需要更好的性能和可靠性,可以选择较新的版本,如果需要更稳定的版本,则可以选择较老的版本。

MySQL的基本语法:

MySQL是一种常用的关系型数据库管理系统,它的语法与标准的SQL语言类似。以下是MySQL的一些基本语法:

创建数据库:CREATE DATABASE database_name;

选择数据库:USE database_name;

创建表:CREATE TABLE table_name (
column1 datatype,
column2 datatype,
column3 datatype,

);

插入数据:INSERT INTO table_name (column1, column2, column3, …)
VALUES (value1, value2, value3, …);

查询数据:SELECT column1, column2, … FROM table_name
WHERE condition;

更新数据:UPDATE table_name SET column1 = value1, column2 = value2, …
WHERE condition;

删除数据:DELETE FROM table_name WHERE condition;

删除表:DROP TABLE table_name;

删除数据库:DROP DATABASE database_name;

修改表结构:ALTER TABLE table_name ADD column_name datatype;
ALTER TABLE table_name MODIFY column_name datatype;
ALTER TABLE table_name DROP column_name;

MySQL的一些最常用的用法:

1、创建表格

使用CREATE TABLE语句创建表格,可以在表格中定义列名和数据类型,并可以设置约束条件。例如:

CREATE TABLE students (
   id INT AUTO_INCREMENT PRIMARY KEY,
   name VARCHAR(50) NOT NULL,
   age INT NOT NULL,
   email VARCHAR(50)
);

2、插入数据

使用INSERT INTO语句向表格中插入数据。例如:

INSERT INTO students (name, age, email) VALUES ('Tom', 20, 'tom@example.com');

3、查询数据

使用SELECT语句从表格中查询数据。例如:

SELECT name, age FROM students WHERE age > 18;

4、更新数据

使用UPDATE语句更新表格中的数据。例如:

UPDATE students SET age = 21 WHERE name = 'Tom';

5、删除数据

使用DELETE FROM语句删除表格中的数据。例如:

DELETE FROM students WHERE age > 30;

6、连接表格

使用JOIN语句连接两个或多个表格。例如:

SELECT students.name, grades.grade FROM students
   JOIN grades ON students.id = grades.student_id;

7、创建索引

使用CREATE INDEX语句在列上创建索引,可以提高查询速度。例如:

CREATE INDEX name_index ON students (name);

8、查看表格结构

使用DESCRIBE语句或SHOW COLUMNS语句查看表格结构。例如:

DESCRIBE students;
SHOW COLUMNS FROM students;

实操小项目

用MySQL管理10名同学的成绩信息示例:

1、创建数据库和表格

首先,我们需要创建一个名为students的数据库,并在其中创建一个名为grades的表格,用于存储学生的成绩信息。表格包含以下字段:

  • id:学生的唯一标识符。
  • name:学生的姓名。
  • score:学生的成绩。

可以使用以下SQL命令创建数据库和表格:

CREATE DATABASE students;
USE students;

CREATE TABLE grades (
    id INT NOT NULL AUTO_INCREMENT,
    name VARCHAR(50) NOT NULL,
    score INT NOT NULL,
    PRIMARY KEY (id)
);

2、插入学生成绩信息

我们可以向grades表格中插入学生成绩信息。

例如,我们可以插入以下学生的信息:

INSERT INTO grades (name, score)
VALUES ('Tom', 85),
       ('Lucy', 92),
       ('John', 78),
       ('Emma', 89),
       ('Eric', 71),
       ('Lisa', 95),
       ('Mike', 83),
       ('Bob', 79),
       ('Alice', 91),
       ('Jenny', 87);

3、查询学生信息

我们可以使用SQL查询语句来检索学生信息。

例如,要查找成绩高于90分的学生,可以使用以下命令:

SELECT name, score FROM grades WHERE score > 90;

这将返回以下结果:

+-------+-------+
| name  | score |
+-------+-------+
| Lucy  |    92 |
| Lisa  |    95 |
| Alice |    91 |
+-------+-------+

例如要查询小于80分的学生:

SELECT name, score FROM grades WHERE score < 80;

这将返回所有成绩小于80分的学生的姓名和分数。

如果你只想返回分数,可以使用以下命令:

SELECT score FROM grades WHERE score < 80;

这将返回所有成绩小于80分的学生的分数。

4、更新学生成绩信息

可以使用以下命令:

UPDATE grades SET score = 93 WHERE name = 'Lucy';

这将把Lucy的成绩更新为93分。

5、删除学生信息

如果需要删除某个学生的成绩信息,可以使用以下命令:

DELETE FROM grades WHERE name = 'Eric';

这将删除名为Eric的学生成绩信息。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值