数据库初认识之MySQL

news2024/11/24 14:05:01

关系型数据库

数据结构  二维表格    库 -> 表 -> 列(字段):用来描述对象的一个属性
                                  行(记录):用来描述一个对象的信息
Mysql(5.7/8.0)   Mariadb   PostgreSQL   Oracle   SQL Server   DB2
阿里云RDB    华为高斯    腾讯TDBA    阿里oceanbase    人大金仓    达梦

非关系型数据库

数据结构  键值对 key:value

缓存型   Redis   Memcached
文档型   MongoDB
搜索型   Elasticsearch
时序型   Prometheus

SQL语句  DDL  DML  DQL  DCL

DDL 用于创建数据库对象:库  表  索引
create database 库名;
create table 表名 (字段名1 数据类型 [字段属性], 字段名2 数据类型 [字段属性], ...., primay key(字段));

drop table 表名;
drop database 库名;

修改表结构

alter table 表名 add 字段 数据类型;

alter table 表名 change 字段1 字段2 数据类型;

alter table 表名 add 属性(字段); #为字段增加属性

alter table 表名 drop 字段名; # 删除字段

show databases;

use 库名;
show tables;
show tables from 库名;

desc 表名;

DML 用于管理表数据

insert into 表名 (字段1, 字段2, ...)  values (字段1的值, 字段2的值, ...);
insert into 表名  values (按照字段顺序的所有字段的值);

delete from 表名 where 条件表达式;

update 表名 set 字段=值, ...  where 条件表达式;

DQL 用于根据条件查询表数据

select 字段1,字段2,...  from 表名 where 条件表达式;
select * from 表名\G

select * from 表名 limit N;           显示表前N行
select * from 表名 limit N,M;         显示从第N行之后的M行记录(不包含第N行)


mysql 6大常见的约束
主键约束  primay key      主键字段不允许有重复的记录,不允许为null,一个表只能有一个主键
唯一性约束  unique key    唯一键字段不允许有重复的记录,但允许为null,一个表可以有多个唯一键
非空约束  not null
默认值约束  default
自增约束  auto_increment
外键约束  foreign key

克隆表  

create table 新表 like 源表;
insert into 新表 (select * from 源表);     数据一样,表结构一样

create table 新表 (select * from 源表);    数据一样,表结构可能不一样

清空表  

delete from 表名;        一条一条的删除,效率较慢,自增长字段仍然会按照清空前的顺序自增

truncate table 表名;     直接重置表,清空效率快,自增长字段会从1重新开始

临时表

create temporary table 表名 (....);   临时表只能在当前会话中有效,且退出当前会话则会失效

外键约束  

主键表: alter table 表名 add primay key (主键字段);
外键表: alter table 表名 [constraint FK_外键别名] add foreign key (外键字段) references 主键表名 (主键字段);
插入数据时,是先主表再外表;删除数据时,是先外表再主表
           

DCL

用户管理
create user  '用户名'@'源地址'    identified by '密码';
                      localhost(本地)/%(所有)       
           
select user,host,authentication_string from mysql.user;           
           
rename user  '旧用户名'@'源地址'  to  '新用户名'@'源地址';
           
drop  user  '用户名'@'源地址';

set password [for '用户名'@'源地址'] = password('.....');

找回root密码

1)修改配置文件,在[mysqld]下添加skip-grant-tables
2)重启mysqld服务,使用 mysql 命令直接进入免密进入mysql
3)执行  update mysql.user set authentication_string=password('....') where user='root';
4)还原配置文件,重启服务,使用账号密码验证登录

权限管理


grant  权限1,权限2,... on  库名.表名 to '用户名'@'源地址' [identified by '密码'];
                 all                    *.*

 

show grants for '用户名'@'源地址';

revoke 权限1,权限2,... on  库名.表名 from '用户名'@'源地址';
               all

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

2023百度强引百度蜘蛛方法(百度蜘蛛秒引工具)

当谈到SEO时,关键字是最基本的元素之一。使用正确的关键字可以帮助您的网站在搜索引擎结果页面(SERP)中排名更高。在本篇文章中,我们将重点介绍2023年百度强引百度蜘蛛方法和百度蜘蛛秒引工具,并提供一些有用的SEO技巧…

比特米盒子刷安卓ATV6.0

最近海鲜市场有很多比特米盒子,50多块包邮,买来的盒子回来折腾下,买回来发现一直卡在“系统启动"中无法进入,不知道原来的是啥系统,看来只能找找线刷的办法,重新拯救救个这盒子。 原文链接地址&#x…

windows 下配置ssh 秘钥到souretree进行使用

一、准备工作 1、安装好git 客户端 并配置好环境变量 下载后,按照向导一步一步进行操作即可,具体步骤这里就不再进行说明。 注意:配置环境变量。 2、准备生成好SSH 秘钥文件 (默认文件名:id_rsa.rsa) &a…

【Ubuntu18.04使用yolov5教程】

欢迎大家阅读2345VOR的博客【Ubuntu18.04使用yolov5教程】🥳🥳🥳2345VOR鹏鹏主页: 已获得CSDN《嵌入式领域优质创作者》称号👻👻👻,座右铭:脚踏实地,仰望星空…

[LeetCode周赛复盘] 第 343 场周赛20230430

[LeetCode周赛复盘] 第 343 场周赛20230430 一、本周周赛总结2660. 保龄球游戏的获胜者1. 题目描述2. 思路分析3. 代码实现 2661. 找出叠涂元素1. 题目描述2. 思路分析3. 代码实现 2662. 前往目标的最小代价1. 题目描述2. 思路分析3. 代码实现 2663. 字典序最小的美丽字符串1.…

优化Google Cloud Storage大文件上传和内存溢出

背景 我们的项目每天都会并行上传好几万份文件到下游的GCP Cloud Storage,当文件比较大时,会采用GCP的可续上传方案,通过把文件切分成多个数据块,分多次HTTP请求上传到GCP Bucket,具体可参考https://cloud.google.com…

560. 和为 K 的子数组【哈希、前缀和】

560. 和为 K 的子数组 给你一个整数数组 nums 和一个整数 k ,请你统计并返回 该数组中和为 k 的连续子数组的个数 。 示例 1: 输入:nums [1,1,1], k 2 输出:2 示例 2: 输入:nums [1,2,3], k 3 输出&…

智能座舱3.0阶段,看全球巨头如何打造更具“价值”的第三空间

面向中国这一全球最大的汽车电动化与智能化单一市场,作为全球第七大汽车技术供应商的FORVIA佛瑞亚集团开始全面发力。 在2023年上海国际车展上,FORVIA佛瑞亚携旗下佛吉亚与海拉一系列突破性技术和互动体验亮相,展示了对电气化与能源管理、安…

SpringMVC详细介绍和@RequestMapping详细使用说明

目录 SpringMVC SpringMVC 介绍 说明是 MVC MVC 全称∶ Model 模型、View 视图、 Controller 控制器。 MVC 是一种思想 MVC 示意图 理解和解读 SpringMVC 特点&概述 梳理 Spring SpringMVC SpringBoot 的关系 SpringMVC-快速入门 SpringMVC 登录流程分析 SpringM…

OpenGL学习教程之 材质

材质 在真实世界里,每个物体会对光产生不同的反应。钢看起来比陶瓷花瓶更闪闪发光,一个木头箱子不会像钢箱子一样对光产生很强的反射。每个物体对镜面高光也有不同的反应。有些物体不会散射(Scatter)很多光却会反射(Reflect)很多光,结果看起来…

Wireshark的安装及基本使用【计算机网络】

Wireshark的安装与基本使用【计算机网络】 前言推荐Wireshark的安装与基本使用一、下载二、安装三、使用技巧四、简单使用4.1 捕获4.2 简单介绍4.3 过滤 问题 最后 前言 2023-5-4 20:51:42 以下内容源自《【计算机网络】》 仅供学习交流使用 推荐 Wireshark的下载安装及简单…

macOS 13.4Beta 4(22F5059b)With OpenCore 0.9.2开发版 and winPE双引导分区原版镜像

镜像特点 完全由黑果魏叔官方制作,针对各种机型进行默认配置,让黑苹果安装不再困难。系统镜像设置为双引导分区,全面去除clover引导分区(如有需要,可以自行直接替换opencore分区文件为clover引导文件)备注…

【软考高项笔记】第3章 信息系统治理(针对甲方)3.1 IT治理

第3章 信息系统治理(针对甲方) 3.1 IT治理 不同于管理,角度更高3.1.1 IT治理基础 目标价值 与业务目标一致 有效利用信息与数据资源 风险管理 管理层次 最高管理层 (定目标,战略) 执行管理层 &#xff08…

MySQL中添加环境变量和初始化MySQL

添加环境变量 环境变量里面有很多选项,这里我们只用到Path 这个参数。为什么在初始化的开始要添加环境变量呢?在黑框(即CMD) 中输入一个可执行程序的名字,Windows会先在环境变量中的Path所指的路径中寻找一遍,如果找到了就直接执行&#xf…

Android 开发中常见的架构设计模式组件化、插件化和模块化

在 Android 中,组件化、插件化和模块化都是很常见的架构设计手段,用于提高应用开发的灵活性、扩展性和复用性。组件化、插件化和模块化可以混合使用,根据项目的需求和规模选择合适的方案。 组件化(Componentization) 组件化是指将一个大型的…

国产!全志科技T507-H工业核心板( 4核ARM Cortex-A5)规格书

1核心板简介 创龙科技 SOM-TLT507 是一款基于全志科技 T507-H 处理器设计的 4 核 ARM Cortex-A 53 全国产工业核心板,主频高达 1.416GHz 。核心板 CPU 、ROM 、RAM、电源、晶振等所有元器件均采用国产工业级方案,国产化率 100%。 核心板通过邮票孔连接方式引出 MIPI CSI 、…

设计模式——模板方法模式

是什么? 在我们的实际开发中尝尝会遇到这种问题:在设计一个系统时知道了算法所需要的关键步骤,而且确定了这些步骤的执行顺序,但是某些步骤的具体实现还不知道,或者说某些步骤的实现与具体的环境相关,例如每…

CypherRat使用

cypherrat3.5 安卓远控,很早之前在tg下的,现在可能有高版本的 使用感受 图形化界面(相比于msf)可用于演练新场景,实战的话只能用xx破解版或是瑟瑟apk让人忽视风险继续安装由于国内安卓,部分功能失效 生成…

Android 拍照以及相册中选择(适配高版本)————上传多张照片之压缩处理、在线预览可伸缩放大(二)

______ Introduction ______ 前言 上一篇文章刚给大家总结完,关于上传头像的功能。此文章所述 主要是关于上传头像的具体流程以及如何对照片做裁剪处理,回调给控件显示;当然重中之重适配了Android高版本,有兴趣的大家可以去看一下…

PyQt5桌面应用开发(6):文件对话框

本文目录 PyQt5桌面应用系列介绍QFileDialog的静态接口QFileDialog的对象接口 示例结论后记 PyQt5桌面应用系列 PyQt5桌面应用开发(1):需求分析 PyQt5桌面应用开发(2):事件循环 PyQt5桌面应用开发&#xff…