当前位置: 首页 > news >正文

MYSQL数据库基础语法

目录

  • 友情提醒
  • 第一章:数据库简述
    • 1)数据库简述
    • 2)常见的数据库软件
    • 3)MySQL数据库安装和连接
    • 4)SQL语句分类
      • ①DDL(Data Definition)
      • ②DML(Data Manipulation)
      • ③DQL(Data Query )
      • ④DCL(Data Control)
      • ⑤TCL(Transaction Control )
  • 第二章:操作数据仓库/数据表的基础语句DDL
    • 1)数据仓库/数据表(创建:Create)
    • 2)数据仓库/数据表(删除:Drop,Truncate)
    • 3)数据仓库/数据表(修改:Alter)
    • 4)数据仓库/数据表(查看:Show)
  • 第三章:操作数据表中数据的基础语句DML
    • 1)数据(增加:Insert)
    • 2)数据(删除:Delete)
    • 3)数据(修改:Update)
  • 第四章:查询数据表中数据的基础语句DQL
    • 1)数据( 查询:Select)

友情提醒

先看文章目录,大致了解知识点结构,直接点击文章目录可以跳转到文章指定位置。

第一章:数据库简述

1)数据库简述

①数据库是什么:水库存水,数据库用来存各种各样的数据。使用数据库主要是为了方便使用SQL语句存储操作数据。
②数据库语言:用于访问和处理数据库的计算机语言。 它大部分是通用的,可适用几乎所有的数据库软件。每一个SQL语句都会有一个执行的结果。SQL语句不区分大小写,以;号结尾。

2)常见的数据库软件

①Oracle:收费很贵,适合中大型项目。
②MySql:免费!!!适合中小型项目,所以我们一般学习都用这个,毕竟SQL语言一通百通。
③DB2:收费,适合中大型项目。
④SqlServer:收费,适合中小项目。

3)MySQL数据库安装和连接

安装篇幅比较长,看这篇就好点击这里跳转

4)SQL语句分类

①DDL(Data Definition)

数据定义语言,定义数据库结构,包括定义表、视图和索引。操作数据仓库和数据表本身。
语句关键词:

就是操作数据仓库和表
Create
Drop
Alter
Truncate

②DML(Data Manipulation)

数据处理语言,包括插入、删除和修改操作。(不知道为啥百度百科和一些博客说包含查询。另外一些说不包含查询,我翻了一下以前课本上面写的是查询和编辑。很离谱,希望有人看到能给我科普一下。)
语句关键词:

就是增删改数据
Delete
Insert
Update

③DQL(Data Query )

数据查询语言,用于查询数据表中的数据,通过select关键字。
语句关键词:

就是查询数据
Select

④DCL(Data Control)

数据控制语言,包括对数据的安全性控制、完整性规则的描述以及对事务的定义、并发控制和恢复。
语句关键词:

Grant
Revoke

⑤TCL(Transaction Control )

事务控制语言,用于控制事务。
语句关键词:

Set transaction
Rollback
Savepoint
Commit

既然是基础我们就只讲前三个DDL,DML,DQL

第二章:操作数据仓库/数据表的基础语句DDL

1)数据仓库/数据表(创建:Create)

①创建数据仓库

-- 创建数据仓库,默认编码表为utf-8
-- 格式: create database 数据仓库名称。
create database db_name1;-- 创建数据仓库,创建的同时设置编码表
-- 格式: create database 数据仓库名称 character set 编码表名。
create database db_name2 character set gbk ;

②创建数据表

-- 创建数据表,同时设置字段,数据类型和约束
-- 格式
/* create table 数据表名称(字段1 类型(长度) [约束],字段2 类型(长度) [约束],....字段n 类型(长度) [约束] 
); */
use db_name1;
create table tableName1(sid int primary key auto_increment,# 主键约束 自增长sname varchar(10) comment '解释说明', # 会被编译的注释sex char(1) unique not null,# 唯一约束 非空约束age int unique default 8,# 唯一约束,默认值 8score double not null, # --,#是单行注释,/**/是多行注释birthday date
);

2)数据仓库/数据表(删除:Drop,Truncate)

①删除数据仓库

-- 删除单个数据仓库
-- 格式 drop database 数据仓库名称;
drop database db_name1;

②删除数据表

-- 格式:drop table 数据表名称;
drop table tableName;

3)数据仓库/数据表(修改:Alter)

①修改数据仓库

-- 修改数据仓库编码表,注意写UTF-8的时候不要加-
-- 格式 alter database 数据仓库名称 character set 编码表名;
ALTER database db_name2 CHARACTER set UTF8;-- 切换数据仓库
-- 格式 use 数据仓库名称;
use db_name1;

②修改数据表

-- 增加列
-- 格式:alter table 表名 add 字段 类型(长度) 约束; 
ALTER table tablename1 add newid int not NULL;-- 修改现有列类型、长度和约束语法
-- 格式alter table 表名 modify 字段 类型(长度) 约束;
ALTER TABLE tablename1 MODIFY newid char(4) unique;-- 修改现有列名称语法
-- alter table 表名 change 旧字段名 新字段名 类型(长度) 约束;
ALTER TABLE tablename1 CHANGE newid newname char(4) not null;-- 删除现有列语法
-- alter table 表名 drop 字段;
ALTER TABLE tablename1 DROP newname;-- 修改表的字符集语法 
-- alter table 表名 character set utf8;
ALTER TABLE tablename1 CHARACTER set gbk;-- 修改表名语法
-- rename table 旧表名 to 新表名; 
RENAME TABLE tablename1 to tablename;

4)数据仓库/数据表(查看:Show)

①查看数据仓库

-- 查看所有数据仓库
-- 格式:show databases;
show databases;-- 查看数据仓库编码格式
-- 格式: show create database 数据仓库名称。
show create database databaseName;-- 查看目前正在使用的数据仓库
-- 格式: SELECT DATABASE();
SELECT DATABASE();

②查看数据表

-- 查看数据表编码格式
--格式: show create table 数据表名称。
show create TABLE tableName1;-- 查看数据表
show TABLES;-- 查看数据表结构
desc tableName;

第三章:操作数据表中数据的基础语句DML

1)数据(增加:Insert)

-- 添加数据第一种格式 当某列值可以为null,自增长或有默认值时可以省略
-- 格式:insert into 数据表名称 (字段1,字段2,...字段N) values (值1,值2,...值N);
insert into tablename(sid,sname,sex,age,score,birthday)values(3,'张一','男',23,89,'1204');
insert into tablename(sid,sname,sex,age,score,birthday)values(4,'张二','女',26,99,'1205');-- 添加数据第二种格式
-- 格式:insert into 数据表名称 set 字段1=值1,字段2=值2,...字段N=值N;
insert into tablename set sid=5,sname='张三',sex='难',age=20,score=91,birthday='1209';
insert into tablename set sid=6,sname='张四',sex='♀',age=10,score=19,birthday='1200';

举例:

insert into b_pro_evaluate(pid,star,eval)values(1,3,'很好回收率很高');
insert into b_pro_evaluate(pid,star,eval)values(1,2,'非常不错的产品');
insert into b_pro_evaluate(pid,star,eval)values(2,5,'五星好评');

2)数据(删除:Delete)

-- 按照行逐行删除整个表的数据但是表本身还存在
-- 格式: delete from 数据表名称;
delete from tableName;-- 先删表,再建新表 效率高
truncate table student1;-- 按条件删除表中数据
-- 格式:delete from 数据表名称 where 条件语句;
delete FROM tableName where sid=1;

3)数据(修改:Update)

-- 更新修改数据
-- 格式:update 数据表名称 set 字段1=新值,字段2=新值 where 条件语句; update tableName set age = 15;
update tableName set age = age + 10 where sid % 2 = 0;
update tableName set sname = "小冯",age = 22 where sid = 4;

第四章:查询数据表中数据的基础语句DQL

1)数据( 查询:Select)

-- 查询整张表
-- 格式:select * from 数据表名称;
select * from tableName;-- 按条件查询
-- 格式:select * from 数据表名称 where 查询条件;
select * from tableName where sid =4;-- 按条件查询
-- 格式:select 字段1,字段2 ... from 数据表名称 where 查询条件;
select sname,age from tableName where sid =4;

题外话:删除表中的数据时没有加where 条件,会删除表中的所有数据,它与truncate 有什么区别?
delete删除表中的数据是按照行逐行删除。 效率低
truncate它是先把表删掉,然后再把表创建出来。 效率高

相关文章:

MYSQL数据库基础语法

目录 友情提醒第一章:数据库简述1)数据库简述2)常见的数据库软件3)MySQL数据库安装和连接4)SQL语句分类①DDL(Data Definition)②DML(Data Manipulation)③DQL&#xff0…...

R实验 参数检验(二)

实验目的:掌握正态分布和二项分布中,功效与样本容量之间的关系;学会利用R软件完成一个正态总体方差和两个正态总体方差比的区间估计和检验。 实验内容: (习题5.28)一种药物可治疗眼内高压,目的…...

【Linux】进程信号及相关函数/系统调用的简单认识与使用

文章目录 前言一、相关函数/系统调用1. signal2. kill3. abort (库函数)4. raise (库函数)5. alarm 前言 现实生活中, 存在着诸多信号, 比如红绿灯, 上下课铃声…我们在接收到信号时, 就会做出相应的动作. 对于进程也是如此的, 进程也会收到来自 OS 发出的信号, 根据信号的不同…...

Spring (14)什么是Spring Boot

Spring Boot是一个开源的Java基础框架,旨在简化Spring应用的创建和开发过程。Spring Boot通过提供一套默认配置(convention over configuration),自动配置和启动器(starters)来减少开发者的开发工作量和配置…...

区间预测 | Matlab实现CNN-KDE卷积神经网络结合核密度估计多置信区间多变量回归区间预测

区间预测 | Matlab实现CNN-KDE卷积神经网络结合核密度估计多置信区间多变量回归区间预测 目录 区间预测 | Matlab实现CNN-KDE卷积神经网络结合核密度估计多置信区间多变量回归区间预测效果一览基本介绍程序设计参考资料 效果一览 基本介绍 1.Matlab实现CNN-KDE卷积神经网络结合…...

Java集合框架全景解读:从源码到实践精通指南

1. Java集合框架简介 在Java中,集合框架是用于存储和处理数据集合的一组类和接口。它提供了一系列的数据结构,比如列表(List)、集(Set)和映射(Map)。这些数据结构为开发者处理数据提…...

Python | Leetcode Python题解之第107题二叉树的层序遍历II

题目: 题解: class Solution:def levelOrderBottom(self, root: TreeNode) -> List[List[int]]:levelOrder list()if not root:return levelOrderq collections.deque([root])while q:level list()size len(q)for _ in range(size):node q.popl…...

H4vdo 台湾APT-27视频投放工具

地址:https://github.com/MartinxMax/H4vdo 视频 关于 H4vdo RTMP lock 屏播放视频工具,可以向目标发送有效载荷,播放目标的屏幕内容。目标无法曹作计算机 使用方法 安装依赖 根据你的操作系统选择一个安装程序 RTMP 服务端 ./rtsp-simple-server.…...

数据结构(树)

1.树的概念和结构 树,顾名思义,它看起来像一棵树,是由n个结点组成的非线性的数据结构。 下面就是一颗树: 树的一些基本概念: 结点的度:一个结点含有的子树的个数称为该结点的度; 如上图&#…...

HTML静态网页成品作业(HTML+CSS)——川西旅游介绍网页(2个页面)

🎉不定期分享源码,关注不丢失哦 文章目录 一、作品介绍二、作品演示三、代码目录四、网站代码HTML部分代码 五、源码获取 一、作品介绍 🏷️本套采用HTMLCSS,未使用Javacsript代码,共有2个页面。 二、作品演示 三、代…...

MySQL数据库单表查询中查询条件的写法

1.使用比较运算符作为查询条件 ; !; >; >; <; <; 如上图所示&#xff0c;可以使用命令select 字段&#xff0c;字段 from 表名 where Gender “M”; 即挑选出Gender “M” 的教师&#xff0c; 如上图所示&#xff0c;可以使用命令select 字段&#xff0c;…...

SQL靶场搭建

概述 简单介绍一下SQL靶场的搭建&#xff0c;以及在搭建过程中遇到的一些问题。使用该软件搭建靶场相对简单&#xff0c;适合新手小白。当然&#xff0c;也可以在自己的虚拟机下进行搭建&#xff0c;相对来说就较为复杂。本章主要讲解使用Phpstudy进行SQL靶场搭建。 这里我推…...

Cocos Creator 帧动画播放组件制作详解

前言 Cocos Creator 是一个强大的游戏开发工具&#xff0c;提供了丰富的功能和组件&#xff0c;其中帧动画播放组件是游戏开发中常用的组件之一&#xff0c;通过帧动画播放组件可以实现角色动画、特效动画等效果。本文将详细介绍如何使用 Cocos Creator 制作帧动画播放组件&am…...

基于STM32控制的双轮自平衡小车的设计

基于STM32控制的双轮自平衡小车的设计是一项涉及电子、控制理论、机械设计和编程的综合工程。以下是关于该设计的一个概述&#xff0c;包括关键组件、控制策略和示例代码。 设计概述 1. 项目背景 自平衡小车作为一种智能控制系统&#xff0c;其设计和实现涉及到多个学科领域…...

Dijkstra算法在《庆余年》中的应用:范闲的皇宫之旅

❤️❤️❤️ 欢迎来到我的博客。希望您能在这里找到既有价值又有趣的内容&#xff0c;和我一起探索、学习和成长。欢迎评论区畅所欲言、享受知识的乐趣&#xff01; 推荐&#xff1a;数据分析螺丝钉的首页 格物致知 终身学习 期待您的关注 导航&#xff1a; LeetCode解锁100…...

HTML静态网页成品作业(HTML+CSS)——利物浦足球俱乐部介绍网页设计制作(5个页面)

&#x1f389;不定期分享源码&#xff0c;关注不丢失哦 文章目录 一、作品介绍二、作品演示三、代码目录四、网站代码HTML部分代码 五、源码获取 一、作品介绍 &#x1f3f7;️本套采用HTMLCSS&#xff0c;共有5个页面。 二、作品演示 三、代码目录 四、网站代码 HTML部分代…...

mac 查看占用80端口的命令

在 Mac 上&#xff0c;如果你想查看哪个进程正在使用 80 端口&#xff0c;你可以使用 lsof 命令。这个命令非常强大&#xff0c;用于列出被进程打开或使用的文件信息。 打开你的终端&#xff0c;并输入以下命令&#xff1a; sudo lsof -i :80这里&#xff0c;-i :80 选项告诉…...

【Qt常用控件】—— 布局管理器

目录 前言 &#xff08;一&#xff09;垂直布局 &#xff08;二&#xff09;水平布局 &#xff08;三&#xff09;网格布局 &#xff08;四&#xff09;表单布局 &#xff08;五&#xff09;分组布局 &#xff08;六&#xff09;Spacer 总结 前言 之前使⽤Qt在界⾯上…...

模板中的右值引用(万能引用)、引用折叠与完美转发

模板中的右值引用&#xff08;万能引用&#xff09;、引用折叠与完美转发 文章目录 模板中的右值引用&#xff08;万能引用&#xff09;、引用折叠与完美转发一、万能引用与引用折叠1. 模板中的右值引用2. 自动类型推导(auto)与万能引用3. 引用折叠与万能引用4. lambda表达式捕…...

Nacos启动报错:[db-load-error]load jdbc.properties error

在学习Nacos中间件时&#xff0c;出现了一个错误&#xff0c;竟然启动报错&#xff01;&#xff01;&#xff01;! 这个错误第一次遇见&#xff0c;当时我感觉大体就是--数据库连接方面的错误。 可是&#xff0c;对于初学者的我来说一脸懵啊&#xff1f;&#xff1f;&#xff…...

5.23相关性分析

相关性分析是一件很自然而然的事情&#xff0c;在生活中和科学研究中&#xff0c;我们都可能会不由自主地关注两件或者多件事情之间的联系。比如性别和方向感有没有关系&#xff0c;有多大关系&#xff0c;辨别不同事物时如何说明特征的科学性&#xff08;也就是该特征和事物的…...

使用 Sonatype Nexus Repository Manager 如何安装npm.md

1. 安装与启动 Nexus2. 登录 Nexus Web UI3. 创建 npm 仓库4. &#xff08;可选&#xff09;配置 npm 代理仓库5. 创建 npm 仓库组6. 配置 npm 客户端7. 测试和使用 Sonatype Nexus Repository Manager (通常简称 Nexus) 是一个强大的二进制管理系统&#xff0c;用于存储和管理…...

console如何连接远程机器上的java程序

启动参数 -Djava.rmi.server.hostname192.168.1.10 -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port12345 -Dcom.sun.management.jmxremote.sslfalse -Dcom.sun.management.jmxremote.authenticatefalse2.jdk安装目录/bin下执行 go jconsole![在这里插入…...

高稳定数显芯片防干扰抗噪数码屏驱动高亮LED驱动IC-VK16K33A/AA 最大13×3的按键扫描

产品型号&#xff1a;VK16K33A/AA 产品品牌&#xff1a;永嘉微电/VINKA 封装形式&#xff1a;SOP28/SSOP28 原厂&#xff0c;工程服务&#xff0c;技术支持&#xff01; 概述 VK16K33A/AA是一种带按键扫描接口的数码管或点阵LED驱动控制专用芯片&#xff0c;内部集成有数据…...

Redis离线安装(单机)

目录 1-环境准备1-1下载redis-4.0.11.tar.gz1-2gcc环境 2-上传解压3-编译安装(需要gcc环境)4-配置redis5-启动Redis6-开启防火墙(root)7-添加开机启动脚本8-设置权限9-设置开机启动10-测试redis服务11-检查是否安装成功12-创建redis命令软连接13-测试redis14-必要时设置防火墙 …...

[Algorithm][动态规划][路径问题][不同路径][不同路径Ⅱ][珠宝的最高价值]详细讲解

目录 1.不同路径1.题目链接2.算法原理详解3.代码实现 2.不同路径 II1.题目链接2.算法原理详解3.代码实现 3.珠宝的最高价值1.题目链接2.算法原理详解3.代码实现 1.不同路径 1.题目链接 不同路径 2.算法原理详解 思路&#xff1a; 确定状态表示 -> dp[i][j]的含义 走到dp[…...

ChatGPT移动应用收入在GPT-4o发布后迎来最大涨幅

每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗&#xff1f;订阅我们的简报&#xff0c;深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同&#xff0c;从行业内部的深度分析和实用指南中受益。不要错过这个机会&#xff0c;成为AI领…...

汉语拼音 如何 转化成粤语拼音 的

将汉语拼音&#xff08;普通话拼音&#xff09;转化为粤语拼音涉及到对声母、韵母以及声调的对照和调整。以下是详细的转换步骤和注意事项&#xff1a; 一、转换步骤 识别普通话拼音的声母和韵母查找对应的粤语拼音声母和韵母应用粤语声调 二、声母对照表 普通话拼音粤语拼…...

本地电子邮件测试工具-MailHog

通过MailHog&#xff0c;可以在浏览器中查看本机发的邮件内容&#xff0c;而无需发送到外网。 https://github.com/mailhog/MailHog在 macOS 环境下&#xff0c;下载文件后: 添加可执行权限:chmod x MailHog_darwin_amd64 运行:./MailHog_darwin_amd64 浏览器打开查看邮件:htt…...

Java18新特性

Java 18引入了若干新特性&#xff0c;以增强语言的功能性和性能。具体如下&#xff1a; 服务提供者接口&#xff08;Service Provider Interfaces, SPI&#xff09;&#xff1a;允许开发者为Java模块系统定义服务加载机制&#xff0c;从而能够更灵活地发现和加载服务实现。简单…...