【数据库】MySQL奇淫技巧(基础篇)

2024-01-11 01:08

本文主要是介绍【数据库】MySQL奇淫技巧(基础篇),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

前言:由于mysql有很多很多“特殊的用法”,在此成其为奇淫技巧,很多用法很冷门,虽然由常用命令拼起来的,但是不是十分常用。对待一些特殊需求查资料都不太描述,这是个很尬的问题,所以在此梳理用到的所有奇淫技巧,当然有新的特殊需求,可以交流学习进一步完善,有任何非议都可以交流。下面是从建表到各种奇淫技巧
《【数据库】MySQL奇淫技巧(报错篇)》

文章目录

  • 1、建库
  • 2、建表
  • 3、表相关操作
  • 4、插入数据
  • 5、删除数据
  • 6、修改数据
  • 7、查数据(数据库的核心,也是最具灵活的,在后续篇章中将进一步呈现神奇之处)

1、建库

SHOW DATABASES;  #展示当前数据库
CREATE DATABASE demo_sql;

【建库要素】

1、【CREATE DATABASE】 创建数据库命令

2、【demo_sql】 数据库名

CREATE DATABASE demo_sql default character set utf8 COLLATE utf8_general_ci;

创建数据库时可以制定默认编码及字符序,使用【default character set utf8 COLLATE utf8_general_ci】设置数据库默认编码为:【utf8】,字符序为:【utf8_general_ci】

2、建表

SHOW TABLES;#显示当前数据库中的表
create table student(id int);

【建表要素】

1、【create table】创建表命令

2、【student】表名

3、【id int】表列及格式

create table student(id int comment "学生ID" auto_increment primary key,name varchar(10) comment "学生姓名",age int comment "学生年龄"
)comment "学生表" CHARSET=utf8;#创建单一主键create table student2(id int comment "学生ID",name varchar(10) comment "学生姓名",age int comment "学生年龄",primary key(id,name)
)comment "学生表" CHARSET=utf8;#创建联合主键

【关键命令说明】

1、【comment】注释,可以给字段或者表加注释,便于后期维护和合作开发

2、【primary key】设置主键,上面两个例子student1是对id设置主键,student2对id,name设置联合主键

3、【CHARSET=utf8】设置表编码(可以和数据库编码不一样)

4、【auto_increment】自增

3、表相关操作

show create table student;	#显示创建表sql
desc student;	#显示表字段信息
drop table student;	#删除表

【关键命令说明】

1、【show create table】显示创表sql命令,后面接表名即可

2、【desc】显示表字段信息,后面跟表名即可

3、【drop table】删除表,后面跟表名即可

4、插入数据

insert into student(name,age) 
values('曹操',20),('刘备',25),('孙权',30),('周瑜',35),('关羽',60);

【关键命令说明】

1、【insert into】 插入命令

2、【student】表名

3、【(name,age)】此处木有id的原因是,id设置为自增,所以插入是会自动生成id

4、【values】插入值列表,可以跟一个或者多个值列表。使用时拼装SQL十分方便

5、删除数据

delete 
from student  
where id >10 ;

删除student表中id大于10的内容

【关键命令说明】

1、 【delete from + 表名】删除命令,指定删除操作对应的表

2、【where + 条件】删除条件,即删除表中某条件的记录

6、修改数据

update  student 
set age=10 
where id >10;

id 大于10的student,age设置为10,貌似有的版本不支持批量修改

【关键命令说明】

1、【update + 表名】更新命令,指定更新的表

2、【set 字段=值】修改命令,修改某个字段的值

3、【where + 条件】修改条件,即修改表中某条件的记录

7、查数据(数据库的核心,也是最具灵活的,在后续篇章中将进一步呈现神奇之处)

select * 
from student
where id < 10

查询student表中id小于10的记录

【关键命令说明】

1、【select *】查询命令,select后面跟查询结果(有很多技巧后续慢慢呈现)

2、【from 表名】查询某个表

3、【where + 条件】查询条件,即查询表中某条件的记录

这篇关于【数据库】MySQL奇淫技巧(基础篇)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/592663

相关文章

MySQL的JDBC编程详解

《MySQL的JDBC编程详解》:本文主要介绍MySQL的JDBC编程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录前言一、前置知识1. 引入依赖2. 认识 url二、JDBC 操作流程1. JDBC 的写操作2. JDBC 的读操作总结前言本文介绍了mysq

java.sql.SQLTransientConnectionException连接超时异常原因及解决方案

《java.sql.SQLTransientConnectionException连接超时异常原因及解决方案》:本文主要介绍java.sql.SQLTransientConnectionExcep... 目录一、引言二、异常信息分析三、可能的原因3.1 连接池配置不合理3.2 数据库负载过高3.3 连接泄漏

Linux下MySQL数据库定时备份脚本与Crontab配置教学

《Linux下MySQL数据库定时备份脚本与Crontab配置教学》在生产环境中,数据库是核心资产之一,定期备份数据库可以有效防止意外数据丢失,本文将分享一份MySQL定时备份脚本,并讲解如何通过cr... 目录备份脚本详解脚本功能说明授权与可执行权限使用 Crontab 定时执行编辑 Crontab添加定

如何通过try-catch判断数据库唯一键字段是否重复

《如何通过try-catch判断数据库唯一键字段是否重复》在MyBatis+MySQL中,通过try-catch捕获唯一约束异常可避免重复数据查询,优点是减少数据库交互、提升并发安全,缺点是异常处理开... 目录1、原理2、怎么理解“异常走的是数据库错误路径,开销比普通逻辑分支稍高”?1. 普通逻辑分支 v

MySQL中On duplicate key update的实现示例

《MySQL中Onduplicatekeyupdate的实现示例》ONDUPLICATEKEYUPDATE是一种MySQL的语法,它在插入新数据时,如果遇到唯一键冲突,则会执行更新操作,而不是抛... 目录1/ ON DUPLICATE KEY UPDATE的简介2/ ON DUPLICATE KEY UP

MySQL分库分表的实践示例

《MySQL分库分表的实践示例》MySQL分库分表适用于数据量大或并发压力高的场景,核心技术包括水平/垂直分片和分库,需应对分布式事务、跨库查询等挑战,通过中间件和解决方案实现,最佳实践为合理策略、备... 目录一、分库分表的触发条件1.1 数据量阈值1.2 并发压力二、分库分表的核心技术模块2.1 水平分

从基础到高级详解Python数值格式化输出的完全指南

《从基础到高级详解Python数值格式化输出的完全指南》在数据分析、金融计算和科学报告领域,数值格式化是提升可读性和专业性的关键技术,本文将深入解析Python中数值格式化输出的相关方法,感兴趣的小伙... 目录引言:数值格式化的核心价值一、基础格式化方法1.1 三种核心格式化方式对比1.2 基础格式化示例

Python与MySQL实现数据库实时同步的详细步骤

《Python与MySQL实现数据库实时同步的详细步骤》在日常开发中,数据同步是一项常见的需求,本篇文章将使用Python和MySQL来实现数据库实时同步,我们将围绕数据变更捕获、数据处理和数据写入这... 目录前言摘要概述:数据同步方案1. 基本思路2. mysql Binlog 简介实现步骤与代码示例1

redis-sentinel基础概念及部署流程

《redis-sentinel基础概念及部署流程》RedisSentinel是Redis的高可用解决方案,通过监控主从节点、自动故障转移、通知机制及配置提供,实现集群故障恢复与服务持续可用,核心组件包... 目录一. 引言二. 核心功能三. 核心组件四. 故障转移流程五. 服务部署六. sentinel部署

使用shardingsphere实现mysql数据库分片方式

《使用shardingsphere实现mysql数据库分片方式》本文介绍如何使用ShardingSphere-JDBC在SpringBoot中实现MySQL水平分库,涵盖分片策略、路由算法及零侵入配置... 目录一、ShardingSphere 简介1.1 对比1.2 核心概念1.3 Sharding-Sp