MYSQL数据库初窥门径, SQL语句地熟练使用, 图形化界面提高效率

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群版 2核4GB 100GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介: MYSQL数据库初窥门径, SQL语句地熟练使用, 图形化界面提高效率

一. 前文简介

从今天开始小杰地mysql数据库地学习随笔,总结也开始了.


小杰出入mysql, 如果出现了许多地表达不当或者观点错误希望各位读者可以给与指针,也希望大家可以多多支持小杰.


大家本着相互学习共同进步地心情一起学习进步(既然您点进来了就是缘分, 如果是休息之际,不如看看小杰地文章给小杰点评一下.)  

二. MYSQL简介

2.1 什么是数据库

数据库(Database)就是按照数据结构来组织,存储和管理数据地仓库. (大量数据地集合)


数据库是针对数据进行 创建,访问, 管理,搜索 等等操作地一款 软件.


再小思考一下为什么要使用数据库  :  我磁盘上硬盘上 存储文件  (  然后进行文件读写地方式对数据进行存储管理不可以吗?  )  明确关键,不是不可以,  而是使用数据库对于数据进行管理更加地方便,快速,安全    (  至于为何更加快速感兴趣地朋友可以去网上查询,  磁盘读写和数据库读写哪个效率更高?)

2.2数据库地特点以及作用

  • 对于数据做持久化保存   (跟磁盘文件存储一样, 对比理解)
  • 方便数据地存储和查询,速度快,安全,方便  
  • 可以处理并发访问  
  • 更加安全地权限管理访问机制

三.MYSQL基础操作(SQL语句)

SQL : structure query language 结构化查询语句


SQL组件 :  DDL (定义,创建)  DML (操作)   DQL (查询), DCL (控制)


今天地核心主题就是DDL :  定义数据库和数据表地结构.  我们常用的功能是增删改,分别对应的命令是create、drop 和 alter.    


数据库操作四大步骤 :连接数据库  打开数据库  操作   关闭退出  

  • 3.1连接数据库

3.1.1 使用命令行连接数据库

mysql -h localhost -u root -p -P 3306    //(按回车)
Enter password:
// -h 服务器地址
// -u 登录地账户名
// -p 账户密码
// -P(大写) 端口号,mysql默认是3306
  • 上述只是为了介绍地清楚,连接数据库是需要指定ip + port 的  说明什么,数据库算是在服务器上面跑的一款应用软件的感觉 提供更快速、高效的数据检索及数据处理
  • 平时我们登录数据库不需要指定ip + 端口 都会默认 localhost 和 3306

  • 然后再介绍一个图形化的操作数据库的应用软件 Navicat  : 它的好处是提供了图形化的界面,使得我们操作数据库更便捷,快速,可以极大的提高工作效率,但是初期我个人认为并不建议使用,最好是熟知熟用了命令行界面之后再去使用Navicat提高工作效率.(Navicat默认收费,但是存在破解版, 有感兴趣的朋友可关注私我,福利)

3.2数据库的语法特点,以及数据库必会操作

  • SQL语句要以分号结尾
  • SQL语句是不区分大小写的,但是向函数呀关键字啥的简易大写,也无所谓, 我是觉着小写写着舒服用小写

  • 数据库操作  (show 查看, create 创建, drop删除 alter修改)
  • 查看所有的数据库: show database;     //上述有效果
show database;
  • 创建数据库:  create database 库名 default charset=utf8mb4;   (后面的default可省略, 其实就是指定数据库采取的字符集)   MySQL使用的编码就是  utf8mb4
create database 库名 default charset=utf8mb4;//完整版
create database 库名; //缩写版本, 字符集默认
create database if not exists 库名;
//不存在再创建,存在就不创建

  • 删除数据库 drop database 库名;     //删库有风险,慎用

打开数据库(进入数据库)  use 库名;

进入数据库之后,数据库里面是各种表结构.   所以我们必须要对于表进行操作

表和数据库关系的理解 :  文件夹和文件的关系.


查看所有表 :  show tables;


创建表 : create tables 表名(字段1 类型, 字段2 类型, 字段3 类型...) engine=innodb default charset=utf8mb4;    //engine后序可省略,  

  • 创建表,如果表不存在执行上述指令,如果表存在则不执行咋办, 类比create database,你懂的  (if not exists) 
create table is not exists 表名(字段1 类型, 字段2 类型, 字段3 类型...);

  • 查看表结构(仅仅只是结构不涉及内容):  desc 表名

Filed: 字段名    Type 字段类型      NULL 可否为空     Default 默认值


删除表: drop table 表名;    


drop table if exists 表名; //如果这个表存在就删除


查看建表语句 : show create table 表名

  • 这个表的字符集不对,应该是默认的字符集不对, 解决办法1,建表的时候指定字符集utf8mb4, 解决办法2, 查找修改所有不是utf8的编码  
网络中借鉴大佬的改掉配置文件中的所有非utf8的
set character_set_client = utf8;
set character_set_server = utf8;
set character_set_connection = utf8;
set character_set_results = utf8;
set collation_connection = utf8_general_ci;
set collation_database = utf8_general_ci;
set collation_server = utf8_general_ci;

数据操作:  增删改查

插入:    前面写字段  后面是  values 数值

insert into 表名(字段1, 字段2, 字段3...) values(值1, 值2, 值3...);
//插入一行数据
insert into 表名(字段1, 字段2, 字段3...) values(值1, 值2, 值3...), values(值1, 值2, 值3...);
//插入多行数据

查询, 查看

select * from 表名;
//查看整个表
select 字段1, 字段2, 字段3, from 表名;
//查看含有指定字段的列
select * from 表名 where 字段=某个值;  
//指定查询字段=特殊值的一行 

3.3 退出数据库    

  • 可以使用  exit 或者是  \q (quit);

四. 总结

本文重点:  首先是知道mysql 是个啥东西, 是对于数据进行管理,存储,长期保存,支持各种操作的一款软件, 是在服务器上跑的,有点像服务器但是不是...  也需要指定ip  + port  


熟练使用基本的SQL语句, create 创建   drop 删除,    创建删除处理针对  数据库 database  还有  table 表,   show展示    use  数据库 (进入数据库)


create table 表名(字段, 类型 ...);  

 

select * from 表   查看查询表数据   * 代表查询所有      可以指定字段  (指定列)


指定 where 字段 = 特定值 指定行


insert into 表名(字段) values(值);   插入数据  


update  修改数据   delete 删除数据

小杰拙见, 初学我觉得可以先把所有基本SQL命令操作自己敲上个5到6遍进行熟练,敲完熟悉完全之后然后总结一下这些操作...   (至于Navicat 初学少用,以后提升工作效率可以熟练使用)初学就是慢慢的先熟练掌握所有的基本操作...  理解的前提是实践操作

相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
5天前
|
存储 关系型数据库 MySQL
MySQL——数据库备份上传到阿里云OSS存储
MySQL——数据库备份上传到阿里云OSS存储
19 0
|
3天前
|
SQL 存储 关系型数据库
数据库SQL入门指南
数据库SQL入门指南
|
3天前
|
SQL 关系型数据库 数据库
数据库空间之谜:彻底解决RDS for SQL Server的空间难题
【8月更文挑战第16天】在管理阿里云RDS for SQL Server时,合理排查与解决空间问题是确保数据库性能稳定的关键。常见问题包括数据文件增长、日志文件膨胀及索引碎片累积。利用SQL Server的动态管理视图(DMV)可有效监测文件使用情况、日志空间及索引碎片化程度。例如,使用`sp_spaceused`检查文件使用量,`sys.dm_db_log_space_usage`监控日志空间,`sys.dm_db_index_physical_stats`识别索引碎片。同时,合理的备份策略和文件组设置也有助于优化空间使用,确保数据库高效运行。
|
5天前
|
SQL 关系型数据库 MySQL
SQL语句编写的练习(MySQL)
这篇文章提供了MySQL数据库中关于学生表、课程表、成绩表和教师表的建表语句、数据插入示例以及一系列SQL查询练习,包括查询、排序、聚合和连接查询等操作。
|
5天前
|
缓存 NoSQL Redis
一天五道Java面试题----第九天(简述MySQL中索引类型对数据库的性能的影响--------->缓存雪崩、缓存穿透、缓存击穿)
这篇文章是关于Java面试中可能会遇到的五个问题,包括MySQL索引类型及其对数据库性能的影响、Redis的RDB和AOF持久化机制、Redis的过期键删除策略、Redis的单线程模型为何高效,以及缓存雪崩、缓存穿透和缓存击穿的概念及其解决方案。
|
8天前
|
Oracle 关系型数据库 MySQL
Mysql和Oracle数据库死锁查看以及解决
【8月更文挑战第11天】本文介绍了解决MySQL与Oracle数据库死锁的方法。MySQL可通过`SHOW ENGINE INNODB STATUS`查看死锁详情,并自动回滚一个事务解除死锁;也可手动KILL事务。Oracle则通过查询V$LOCK与V$SESSION视图定位死锁,并用`ALTER SYSTEM KILL SESSION`命令终止相关会话。预防措施包括遵循ACID原则、优化索引及拆分大型事务。
|
3天前
|
关系型数据库 MySQL 数据库
探究数据库开源协议:PostgreSQL vs MySQL
探究数据库开源协议:PostgreSQL vs MySQL
|
4天前
|
SQL 关系型数据库 MySQL
如何在 MySQL 或 MariaDB 中导入和导出数据库
如何在 MySQL 或 MariaDB 中导入和导出数据库
15 0
|
4天前
|
安全 关系型数据库 MySQL
如何在 MySQL 中导入和导出数据库以及重置 root 密码
如何在 MySQL 中导入和导出数据库以及重置 root 密码
14 0
|
4天前
|
SQL Ubuntu 关系型数据库
如何在云服务器上创建和管理 MySQL 和 MariaDB 数据库
如何在云服务器上创建和管理 MySQL 和 MariaDB 数据库
8 0

热门文章

最新文章