数据库(mysql)-新手笔记-基本知识点(1)

基本概念

数据库 Database :存储数据的容器

表  Table  : 在数据库中存储的基本结构,它由行和列组成

行 Row : 表中的一条记录

列 Column : 表中的字段,定义了数据的类型和约束

数据类型

数据值 如 INT(整型),FLAOT(浮点型) ,DECIMAL (精确小数点)

字符串 如 VARCHAR(可变长度字符), CHAR(定长字符),TEXT(存储长文本)

日期和时间想 如 DATE(存日期),TIME(存时间)

DATETIME(存日期和时间('1000-01-01 00:00:00' 到 '9999-12-31 23:59:59'))

TIMESTAMP(计算机时间( '1970-01-01 00:00:01' UTC 到 '2038-01-19 03:14:07'))

SQL语言

DDL(数据库定义语言) 如 create(创建) alter(改变) drop(消除) 定义数据库结构

DML(数据库操作语言) 如 insert(插入) update(更新) delete(删除) 处理表中数据

DQL(数据库查询语言) 如 select 查询表中的数据

DCL(数据库控制语音) 如grant(授用户权) revoke(撤用户权)

数据库和表 属于数据结构  表中行属于数据  表中列是限制数据类型

增删改查
增(表结构的建立)

创建一个数据库

 GREATE DATABASE 

创建一个表

GRATE TABLE (字段名 字段类型,字段名 字段类型....)

CREATE DATABASE Student DEFAULT CHAR SET UTF8;//创建一个数据库
USE Student;//使用一个数据库CREATE TABLE StudentScores(score INT ,studentName VARCHAR(8),address CHAR(10) )
//创建一个表时候要选择一个数据库建一个表时候要填写字段名 字段类型,依此绑定一个数据表的结构
增(表结构数据插入 )

全字段插入即表结构中所有的(字段名,字段类型)

INSERT INTO 表名 [(字段名 字段类型...) ] VALUE(数据,...)

[]不写里面的(字段名 字段类型)默认全字段插入

单字段插入即表结构中某个(字段名 字段类型)

单字段数据插入 

INSERT INTO 表名 (字段名 字段类型) VALUE (数据)

多个数据同字段名同字段类型插入

INSERT INTO 表名 (字段名 字段类型...)  VALUES(数据,...) ,(数据...),(数据...)

//, 逗号为分割数据集体插入,多个数据插入时候写完(字段名 字段类型...)

// VALUES 用于多数据插入  VALUE 用于单数据插入

# 创建一个数据库
CREATE DATABASE student DEFAULT CHARSET UTF8;
# 使用一个数据库
USE student;
# 创建一个表
CREATE TABLE StudentScores(score INT ,studentName VARCHAR(8),address CHAR(10) );
# 插入多行数据(全字段)
INSERT INTO StudentScores (score ,studentName,address  ) VALUES (90,'立马24','不好意思') ,(95,'快56','不好意思' ),(95,'909','不好意思') ,(23,'看3','不好意思') ,(36,'许库908','酒精') ,(49,'许库1','不删') ;
# 插入单行数据(全字段)
INSERT INTO StudentScores (score ,studentName,address  ) VALUE (87,'人言喊着','行');
# 插入单行数据(单字段)
INSERT INTO StudentScores (score ) VALUE (21);

运行结果

改(字段名)

注意如果用于表中字段名的(增删改) 一般前面会带ALTER关键字

改字段名或者字段类型 关键字 CHANGE

字段名和字段类型全改 

ALTER  TABLE 表名  CHANGE 旧字段名 新字段名 新字段类型

改字段名

 ALTER  TABLE 表名  CHANGE 旧字段名 新字段名  旧字段类型

改字段类型(注意的是这种方式,不容易区分是否改了字段类型,

如遇到需要改字段类型,建议全改)

 ALTER  TABLE 表名  CHANGE 旧字段名 旧字段名  新字段类型

# 原表结构
CREATE TABLE StudentScores(score INT ,studentName VARCHAR(8),address CHAR(10) );
# 改全字段(字段名 字段类型)
ALTER TABLE  StudentScores CHANGE score yearScore VARCHAR(9);
# 改字段名
ALTER TABLE  StudentScores CHANGE yearScore score INT;
# 改字段类型
ALTER TABLE  StudentScores CHANGE score score VARCHAR(8);

添加字段名 关键字 ADD  默认在字段名最后添加一个新字段

ALTER TABLE 表名 ADD 字段名 字段类型 

指定添加位置

在某个字段名之后

ALTER TABLE 表名 ADD 字段名 字段类型  AFTER  字段名

在所有字段最前面

ALTER TABLE 表名 ADD 字段名 字段类型  FIRST

# 添加新字段
ALTER TABLE StudentScores ADD fathername CHAR(4) AFTER address;
# 添加新字段在address字段前
ALTER TABLE StudentScores add serial CHAR(4) FIRST ;
删(字段名) 

删字段 关键字 drop

ALTER TABLE 表名 DROP 字段名

# 删除fathername字段
ALTER TABLE StudentScores DROP fathername;

查 特定的字段名中的数据 关键 WHERE 字段名 = 数值

SELECT * FROM 表名 WHERE 字段名 = 数值 (满足当前条件时候查询全字段)

SELECT 字段名 FROM 表名 WHERE 字段名 = 数值 (满足当前条件时候查询选择的字段名)

# 查询score字段
SELECT score FROM StudentScores WHERE score=90;
# 查询全字段e字段
SELECT * FROM StudentScores WHERE score=90; 

 根据查询 可以进行 特定的删除 关键字 DELETE FROM

 DELETE FROM 表名 WHERE 字段名 = 数值 (满足当前条件时候删除数据)

# 删除满足条件的数据
DELETE FROM StudentScores WHERE score<90;

 根据查询 可以进行 设置数据 

UPDATE 表名 SET 字段名= 数值 WHERE 字段名 = 数值 (满足当前条件时候设置数据)

# 设置满足条件的数据
UPDATE StudentScores SET address='可以了' WHERE score<95;

 注意

DELETE FROM 表名 直接使用删除表数据,保留表结构(字段名),不会清理内存,属于可回退的操做

UPDATE 表名 SET 字段名=数值 直接使用会将数据中当前的字段名,全部设置相同的数据

当然如果真的不需要该表

使用 TRUNCATE 表名 ,删除表数据,保留表结构(字段名),清理内存,这个是不可回退的操作

显示

显示数据库

show databases  显示所有的数据库

显示创建的数据库

show create database 数据库名 显示数据库的创建信息

展示表结构

DESC 表名 包含(字段名 字段类型)

# 展示数据库
SHOW DATABASES ;
# 展示数据库student的创建信息
SHOW CREATE database Student;
#展示表结构
DESC studentscores;
排序

关键字 ORDER BY 默认升序  加了DESC 降序

# 默认升序
SELECT (moneyAmount) FROM personnelNeeded ORDER BY moneyAmount;
# 默认降序
SELECT (moneyAmount) FROM personnelNeeded ORDER BY moneyAmount DESC ;
# 原始数据
SELECT (moneyAmount) FROM personnelNeeded ;

巧学巧记

SQL 语言不关系是否用大小写,最好用大写写关键字

数据库和表 属于数据结构  表中行属于数据  表中列是限制数据类型

显示数据库 用 SHOW, 显示表结构 用 DESC

数据结构创建用CREATE  表的话要写字段名和字段类型

数据插入用 INSERT INTO , VALUE 是往里面带数值 多行插入数值 需用 VALUES

字段名修改前面要带ALTER  FROM 表名

修改用CHANGE 增加用ADD 删除用DROP 

查询方便进行后续的某些数据的修改和删除

默认升序 ORDER BY 默认降序 DESC

修改为UPDATE 表名 SET 字段名= 数值 

删除为 DELETE FROM 表名 ,

用 WHERE 字段名 = 数值要牢记 

实在想删整体表,要多考虑,常备份可免烦恼

 
 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/273116.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基于OpenCV的图形分析辨认03

目录 一、前言 二、实验目的 三、实验内容 四、实验过程 一、前言 编程语言&#xff1a;Python&#xff0c;编程软件&#xff1a;vscode或pycharm&#xff0c;必备的第三方库&#xff1a;OpenCV&#xff0c;numpy&#xff0c;matplotlib&#xff0c;os等等。 关于OpenCV&…

微信小程序云开发教程——墨刀原型工具入门(编辑页面)

引言 作为一个小白&#xff0c;小北要怎么在短时间内快速学会微信小程序原型设计&#xff1f; “时间紧&#xff0c;任务重”&#xff0c;这意味着学习时必须把握微信小程序原型设计中的重点、难点&#xff0c;而非面面俱到。 要在短时间内理解、掌握一个工具的使用&#xf…

Hello C++ (c++是什么/c++怎么学/c++推荐书籍)

引言 其实C基础语法基本上已经学完&#xff0c;早就想开始写C的博客了&#xff0c;却因为其他各种事情一直没开始。原计划是想讲Linux系统虚拟机安装的&#xff0c;后来考虑了一下还是算了&#xff0c;等Linux学到一定程度再开始相关博客的写作和发表吧。今天写博客想给C开个头…

excel 动态列导出

excel动态列&#xff0c;只好用poi来写了&#xff0c;也并不复杂&#xff0c;一样就这个件事情抽像为几步&#xff0c;就是套路了&#xff0c;开发效率就上去了。 1 准备空模板 导出操作与excel模板的导出一样&#xff0c;可以参考excel导出标准化 2 自定义SheetWriteHandler …

Python 一步一步教你用pyglet制作汉诺塔游戏

目录 汉诺塔游戏 1. 抓取颜色 2. 绘制圆盘 3. 九层汉塔 4. 绘制塔架 5. 叠加圆盘 6. 游戏框架 汉诺塔游戏 汉诺塔&#xff08;Tower of Hanoi&#xff09;&#xff0c;是一个源于印度古老传说的益智玩具。这个传说讲述了大梵天创造世界的时候&#xff0c;他做了三根金刚…

Python错题集-8:AttributeError(找不到对应的对象的属性)

1问题描述 AttributeError: AxesSubplot object has no attribute arc 2代码详情 import matplotlib.pyplot as plt# 创建一个新的图形和坐标轴 fig, ax plt.subplots()# 定义弧线的参数 center (0.5, 0.5) # 圆心坐标 (x, y) width 1.0 # 半径 height 0.5 # 半径 ang…

使用阿里云服务器搭建网站简单吗?超简单教程

使用阿里云服务器快速搭建网站教程&#xff0c;先为云服务器安装宝塔面板&#xff0c;然后在宝塔面板上新建站点&#xff0c;阿里云服务器网aliyunfuwuqi.com以搭建WordPress网站博客为例&#xff0c;来详细说下从阿里云服务器CPU内存配置选择、Web环境、域名解析到网站上线全流…

AI领域再出“王炸“----Claude3是否会成为下一个“神“

目录 一.Claude3最新发布 二.Claude3支持20万token 三.Claude3在未公开算法上取得重大突破 1.Claude 3读懂博士论文 2.量子跃迁集成&#xff1a; Claude 3智商&#xff1a;101 测试方法 测试细节 通过Karpathy挑战 Claude 3自画像&#xff0c;突破本我 从洛杉矶排到…

MySQl基础入门⑦

上一章知识内容 分析数据且区分数据类型 看下表分析数据的特征&#xff0c;根据其特征确定相应的数据类型。 分析以上表格特征&#xff0c;确定数据类型&#xff0c;并对数据进行分类。分析数据后按固定长度字符串、可变长度字符串、整数、固定精度小数和日期时间数据类型对数…

VS Code引入ECharts

Charts是一个使用 JavaScript 实现的开源可视化库&#xff0c;涵盖各行业图表&#xff0c;提供了丰富的图表类型和交互能力。&#xff08;摘自菜鸟教程&#xff09; 下面我们来介绍一下VS Code引入ECharts的相关操作 检查电脑是否已经安装了Java语言的软件开发工具包 ECharts…

WebMagic框架

1.webmagic框架 webmagic框架是一个Java实现的爬虫框架&#xff0c;底层依然是HttpClient和jsoup 组件&#xff1a; downloader&#xff1a;下载器组件PageProcessor&#xff1a;页面解析组件&#xff08;必须自定义&#xff09;scheculer&#xff1a;访问队列组件pipeline&am…

kafka查看消息两种方式(命令行和软件)+另附发送消息方式

1、命令行方式 ①找到kafka安装文件夹 ②执行命令 #指定offset为指定时间作为消息起始位置 kafka-consumer-groups.sh \ --bootstrap-server 20.2.246.116:9092 \ --group group_1 \ --topic lanxin_qiao \ --reset-offsets \ --to-datetime 2023-07-19T01:00:00.000 \ -exe…

Linux--基础命令

一.pwd&#xff08;Print Working Directory&#xff09; (1)pwd:显示当前位置的绝对路径; 二.cd (Change Directory) (2)cd:切换目录,cd的参数表示要切换的位置,可以使用绝对路径或者相对路径; 三.ls (3)ls:显示目录中的文件 (l a i) ls补充: 理解使用: -A 显现除 “.”和“…

20-Java备忘录模式 ( Memento Pattern )

Java备忘录模式 摘要实现范例 备忘录模式&#xff08;Memento Pattern&#xff09;保存一个对象的某个状态&#xff0c;以便在适当的时候恢复对象 备忘录模式属于行为型模式 摘要 1. 意图 在不破坏封装性的前提下&#xff0c;捕获一个对象的内部状态&#xff0c;并在该对…

mockjs学习

1.前言 最近面试发现之前团队协同合作的项目没有mock数据难以向面试官直接展示&#xff0c;所以迟到得来速学一下mockjs。 参考视频&#xff1a;mockJs 妈妈再也不用担心我没有后端接口啦_哔哩哔哩_bilibili 一开始查阅了一些资料&#xff0c;先是看了下EasyMock&#xff0c…

利用websocket +定时器简易的实现一个网络聊天室

其实原理非常简单,就是客户端用户通过websoket来连接websocket服务端。然后服务端,收集每个用户发出的消息, 进而将每条用户的消息通过广播的形式推送到每个连接到服务端的客户端。从而实现用户的实时聊天。 // TODO : 我主要是讲一下实现思路。并未完善其功能。 1.后端 依赖 …

Spring MVC 全局异常处理器

如果不加以异常处理&#xff0c;错误信息肯定会抛在浏览器页面上&#xff0c;这样很不友好&#xff0c;所以必须进行异常处理。 1.异常处理思路 系统的dao、service、controller出现都通过throws Exception向上抛出&#xff0c;最后由springmvc前端控制器交由异常处理器进行异…

Tensorflow2.0+部署(tensorflow/serving)过程备忘记录Windows+Linux

Tensorflow2.0部署&#xff08;tensorflow/serving&#xff09;过程备忘记录 部署思路&#xff1a;采用Tensorflow自带的serving进模型部署&#xff0c;采用容器docker 1.首先安装docker 下载地址&#xff08;下载windows版本&#xff09;&#xff1a;https://desktop.docke…

Jmeter之Ramp-up Period(in seconds)

1、Ramp-up Period概念 &#xff08;in seconds&#xff09;–并发用户启动周期&#xff0c;告知JMeter 要在多长时间内启动全部Vuser用户。 2、为什么需要有“ramp-up period”&#xff0c;立即启动所有的并发用户数不是更好&#xff1f; 对于绝大多数的网址或应用&#xf…

【Prometheus】DataModel

数据模型 DataModel 指标 Metric metric 包含 metric name 和 metric label 格式&#xff1a; <metric name>{<label name><label value>, ...}例如&#xff1a;服务器 HTTP 接口 /messages 的总请求数 api_http_requests_total{method"POST",…