MySQL数据库 (从入门到精通)

本文介绍了MySQL数据库的基础概念,包括关系型数据库的原理、主流SQL和NoSQL数据库对比,详细讲解了MySQL的安装与配置,以及数据库表的操作,如创建、删除和数据写入,涉及SQL语句、索引和数据类型等内容。

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

MySQL数据库 (从入门到精通)

MySQL数据库

大纲:

  • MySQL数据库安装与配置
  • MySQL表操作
  • MySQL基本查询
  • MySQL高级查询
  • MySQL写入操作
  • MySQL基本函数
  • MySQL的综合应用

一、数据库的概念

1.1 数据库的基础知识
  • 数据库:数据库就是存储数据的仓库,其本质是一个文件系统,数据按照特定的格式将数据存储起来,用户可以通过SQL对数据库中的数据进行增加,修改,删除及查询操作。

  • 关系型数据库:数据库中的记录是有行有列的数据库就是关系型数据库,与之相反的就是NoSQL数据库了。

  • 数据库和表:数据库管理系统(DataBase Management System,DBMS):指一种操作和管理数据库的大型软件,用 于建立、使用和维护数据库,对数据库进行统一管理和控制,以保证数据库的安全性和完整性。用户通过数据 库管理系统访问数据库中表内的数据。

  • 关系型数据库系统: 关系型数据库系统( RDBMS) Relational database management system :是指使用了关系模型的数据库系统。关系模型中,数据是分类存放的,数据之间可以有联系

  • 第一个关系型数据库 :1976年BM的 System R团队在出版的论文中阐述了关系模型,1979年 Oracle公司推出了首个关系型数据库成品。

  • 关系型数据的应用:关系型数据库被应用在非常多的领域,教育系统,商业系统,医疗系统,而且关系型数据库可以有效组织和管理大量复杂的数据,所以关系型数据库才是最重要的数据库产品。

1.2 关系型数据库
  • 概念:数据库中的记录是有行有列的数据库就是关系型数据库
1.2.1 常见的关系型数据库管理系统 (主流SQL数据库)
  • MySQL :开源免费的数据库,小型的数据库 已经被Oracle收购了。

  • MySQL5.5版本之后都是由 Oracle发布的版本。

  • Oracle :收费的大型数据库,Oracle公司的产品。Oracle收购SUN公司,收购MySQL。

  • DB2 :IBM公司的数据库产品,收费的。常应用在银行系统中。在中国的互联网公司,要求去 IOE(IBM小型机、Oracle数据库、EMC存储设备)

  • SQLServer:MicroSoft 公司收费的中型的数据库。C#、.net等语言常使用。

  • SyBase :已经淡出历史舞台。提供了一个非常专业数据建模的工具PowerDesigner。

  • SQLite : 嵌入式的小型数据库,应用在手机端。

1.3 NoSQL数据库系统
  • 概念:NoSQL数据库指的是数据分类存放,但是数据之间没有关联关系的数据库系统
1.3.1 常见的非关系型数据库管理系统 (主流的NoSQL数据库)
  • Redis 内存保存数据秒杀 ,微博
  • MemCache:相似于Redis,市场份额不是很大
  • MongoDB: 硬盘保存数据,知乎,简书
  • Ne04j:负责的人际关
1.4 MySQL数据库安装与初始化

MySQL数据库: MySQL是应用最广泛、普及度最高的开源关系型数据库,MySQL由瑞典 MySQL AB公司开发,目前属于 Oracle旗下产品

MySQL 大事记

1996 MySQL1.0 诞生
1999 MySQL AB公司成立
2000 MySQLL4.0发布
2003 MySQL5.0发布

MySQL衍生版

Oracle
MariaDB
Percona
1.5 用户管理
MySQL客户端:Navicat,DBeaver
官网地址: https://www.navicat.com.cn

密码忘记重设置root密码

ALTER USER ‘root’@‘localhost’ IDENTIFIED BY123456
1.6 MySQL配置文件
MySQL配置文件

在my.ini文件中,我们可以设置各种 MySQL的配置,例如字符集、端口号、目录地址等等[client] 
#客户端信息配置信息
[mysql] #客户端信息配置信息
[mysqld] #数据库配置信息
 
[client]
port=3306   
        
[mysql]
no-beep

port=3306 #端口号
datadir=C:/ ProgramData/ MySQL/ MySQL Server8.0/Data #数据目录
default authentication_ plugin= caching sha2_ password #密码认证插件
default- storage- engine= INNODB #默认存储引擎
sq1-mode=" STRICT TRANS TABLES, NO ENGINE SUBSTITUTION" #开启严格模式
log- output=FILE #用文件记录日志
genera1-10g=0 #关闭日志输出
genera1_1 og file=" DESKTOP-HB42AU2.1og" #日志文件名称
slow- query-1og=1 #开启慢查询日志
query_1 og file=" DESKTOP-HB42AU2-s1ow.1og" #慢查询日志文件名称
long query time=10 #大于多少秒的执行SQL被记录在慢查询日志
log- error=" DESKTOP-HB42AU2.err” #错误日志名称
server-id=1 #数据库ID
lower case table names=1 #把表名转换成小写
secure-f1le-priv="C:/ ProgramData/MyQL/ lySQL Server8.0/ Uploads" #导入导出数据的目录地址
max connections=151 #最大连接数
table open cache=2000
tmp table size=16M
thread cache size=10#线程数量
myisam max sort file size=100G
myisam sort buffer size=8M
key buffer size=8M
read buffer size=0

2. 数据库表的相关操作

学习目标

管理逻辑库和数据表
创建、删除、修改逻辑库和数据表
了解常用的数据类型和约束
字符串、整数、浮点数、精确数字、日期、枚举。
主键约束、非空约束、唯一约束、外键约束等
掌握索引运行机制和使用原则
排序为什么可以提高数据检索速度?
怎么创建和删除索引?
什么条件下使用索引?

2.1 定义逻辑库,数据表

什么是SQL语言:

  • SQL是用于访问和处理数据的标准的计算机语言

SQL语言分类

  • DML:添加 修改 删除 查询
  • DCL:用户 权限 事务
  • DDL:逻辑库 数据表 视图 索引

SQL语句注意事项

  • SQL语句不区分大小写,但是字符串区分大小写
    SELECT “HelloWorld”;
  • SQL语句必须以分号结尾,SQL语句中的空白和换行没有限制,但是不能破坏语法

SQL语句的注释

-SQL语句的注释有两种,分别如下:
 
 #这是一段注释文字
/*这是另一段注释文字*/

创建逻辑库

CREATE DATABASE 逻辑库名称 #创建逻辑库
DROP DATABSE 逻辑库名称 ;#展示逻辑库

CREATE DATABASE student #创建逻辑库
DROP DATABASE student #删除逻辑库
SHOW DATABASES#展示逻辑库

创建数据表

 CREATE TABLE数据表 (                        
    列名1 数据类型 [约束][ COMMENT注释],
    列名2 数据类型 [约束][ COMMENT注释],
    ...
 )[ COMMENT=注释];

CREATE TABLE student(
  	id INT UNSIGNED PRIMARY KEY,  #unsigned:无符号
    NAME VARCHAR(20) NOT NULL,
    sex CHAR(1) NOT NULL,
    birthday DATE NOT NULL,
    tel CHAR(11) NOT NULL,
    remark VARCHAR(200)
);

写入数据表

SHOW tables;#查看逻辑表
DESC Student;#查看数据表
SHOW CREATE TABLE student,#查询建表语句
DROP TABLE Student#删除表文件
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Ning.L

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值