【MySQL】库和表的操作

目录

  • 一、库操作
    • 1.创建数据库
      • 字符集和校验规则
      • 校验规则对数据库的影响
    • 2.查看数据库
    • 3.修改数据库
    • 4.删除数据库
    • 5.数据库备份
    • 6.查看连接情况
  • 二、表操作
    • 1.创建表
    • 2.查看表
    • 3.修改表
    • 4.删除表

一、库操作

1.创建数据库

create database db1; //方法1
create database is not exists db1;//表示如果没有则创建,方法一不写表示默认携带,与方法1完全相同

在这里插入图片描述

字符集和校验规则

字符集: character set,就是一套表示字符的符号和这些的符号的底层编码

校验规则: collation,则是在字符集内用于比较字符的一套规则。

查看数据库支持的字符集

show charset;

在这里插入图片描述

查看数据库支持的字符集校验规则

show collation;

在这里插入图片描述

校验规则对数据库的影响

使用utf8_general_ci 不区分大小写
在这里插入图片描述

使用utf8_bin 区分大小写
在这里插入图片描述

此时我们可以在创建的时候携带字符集和校验规则

如果我们不指定,默认按配置文件中的规则创建数据库
在这里插入图片描述

指定字符集和校验规则
在这里插入图片描述

2.查看数据库

查看数据库

show databases;

在这里插入图片描述

显示创建语句

在这里插入图片描述

3.修改数据库

alter database db_name;

对数据库的修改主要指的是修改数据库的字符集,校验规则

实例: 将 db1数据库字符集改成 gbk
在这里插入图片描述

4.删除数据库

drop database (if exists) db_name; //括号中的可写可不写

执行删除之后的结果:

  • 数据库内部看不到对应的数据库
  • 对应的数据库文件夹被删除,级联删除,里面的数据表全部被删
    在这里插入图片描述

值得一提的是,不要轻易删数据库,误删数据库是非常严重的问题。

5.数据库备份

mysqldump -P3306 -u root -p 密码 -B 数据库名 > 数据库备份存储的文件路径

实例:
在这里插入图片描述

可以看到这个文件中存放的是我们创建这个数据库和插入数据等的有效指令
在这里插入图片描述

还原数据库

source /home/tzc/linux/MySQL/test.sql(带绝对路径+文件名)

在这里插入图片描述
在这里插入图片描述

如果备份的不是整个数据库,而是其中的一张表,怎么做?

mysqldump -u root -p 数据库名 表名1 表名2 > D:/mytest.sql

同时备份多个数据库

mysqldump -u root -p -B 数据库名1 数据库名2 ... > 数据库存放路径

如果备份一个数据库时,没有带上-B参数, 在恢复数据库时,需要先创建空数据库,然后使用数据
库,再使用source来还原。

6.查看连接情况

show processlist;

在这里插入图片描述
可以告诉我们当前有哪些用户连接到我们的MySQL,如果查出某个用户不是你正常登陆的,很有可能你的数据库被人入侵了。以后大家发现自己数据库比较慢时,可以用这个指令来查看数据库连接情况。

二、表操作

1.创建表

语法:

create table table_name(field1 datatype,fileld2 datatype)
charset=字符集 collate=校验规则 engine=存储引擎;

说明:

  • field 表示列名

  • datatype 表示列的类型

  • charset 字符集,如果没有指定字符集,则以所在数据库的字符集为准

  • collate 校验规则,如果没有指定校验规则,则以所在数据库的校验规则为准

实例:

在这里插入图片描述

使用不同的存储引擎创建表
在这里插入图片描述
我们创建的表默认是InnoDB的,在配置文件中读取。

2.查看表

desc table_name;

实例:
在这里插入图片描述

3.修改表

在项目实际开发中,经常修改某个表的结构,比如字段名字,字段大小,字段类型,表的字符集类型,表的存储引擎等等。我们还有需求,添加字段,删除字段等等。这时我们就需要修改表。

ALTER TABLE tablename ADD (column datatype [DEFAULT expr][,column datatype]…);

ALTER TABLE tablename MODIfy(column datatype [DEFAULT expr][,columndatatype]…);

ALTER TABLE tablename DROP (column);

实例:

向表中插入数据

insert into 表名 (指定属性字段,如果不指定表示添加所有属性) values(数据);

在这里插入图片描述

在users表添加一个字段,用于保存图片路径

alter table user1 add 属性 数据类型 comment '备注' after birthday(表示在birthday属性后方添加)

在这里插入图片描述

修改属性: 将name长度修改为60。 修改属性实际就是覆盖。
在这里插入图片描述

修改属性名: 新字段需要完整定义

在这里插入图片描述

删除属性

alter table user1 drop id; //删除id属性

在这里插入图片描述

修改表名

alter table 表名 rename to(可写可不写) 新表名;

在这里插入图片描述

4.删除表

drop table 表名;

实例:

在这里插入图片描述

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

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

相关文章

Live800:金牌客服常用的6大提问技巧

在客服行业,提问技巧是非常重要的一项技能。好的提问技巧不仅能够帮助客服人员更好地了解客户需求,还能够提高客户满意度和忠诚度。以下是金牌客服常用的6大提问技巧,希望能够对客服人员提升工作效率有所帮助。 1、开放性问题 开放性问题是指…

物联网AI MicroPython学习之语法 umqtt客户端

学物联网,来万物简单IoT物联网!! umqtt 介绍 模块功能: MQTT客户端功能 - 连线、断线、发布消息、订阅主题、KeepAlive等功能。 MQTT协议采用订阅者/发布者模式,协议中定义了消息服务质量(Quality of Service&#x…

能链智电的野心,充电桩装不下

作者 | 张未 来源 | 洞见新研社 从油到电,从平台到资产运营方,从国内到国外,能链智电的野心,充电桩装不下。 “充电桩服务第一股”能链智电,曾作为平台型企业,连接了充电桩上下游,为充电桩制造…

基于SSM的供电所档案管理系统

末尾获取源码 开发语言:Java Java开发工具:JDK1.8 后端框架:SSM 前端:采用JSP技术开发 数据库:MySQL5.7和Navicat管理工具结合 服务器:Tomcat8.5 开发软件:IDEA / Eclipse 是否Maven项目&#x…

Realistic fault detection of li-ion battery via dynamical deep learning

昇科能源、清华大学欧阳明高院士团队等的最新研究成果《动态深度学习实现锂离子电池异常检测》,用已经处理的整车充电段数据,分析车辆当前或近期是否存在故障。 思想步骤: 用正常电池的充电片段数据构造训练集,用如下的方式构造…

Web APIs——正则表达式使用

1、什么是正则表达式 正则表达式(Regular Expression)是用于匹配字符串中字符组合的模式。在JavaScript中,正则表达式也是对象 通常用来查找、替换那些符合正则表达式的文本,许多语言都支持正则表达式 1.1 正则表达式使用场景 例如…

Modbus-RTU 数据帧格式 、报文解析

文章目录 报文模型功能代码读线圈 (0x01 0x02)读寄存器 (0x03 0x04)写单个线圈 (0x05)写单个寄存器 (0x06 0x41)写多个线圈(0x0F)写多个寄存器(0x10 0x43)错误代码 Modbus协议&#…

TCP和UDP C#代码实战

网络传输的七层结构: 其中TCP和UDP协议在传输层。 TCP/IP协议 TCP/IP中包含了四层架构中的多个协议,取其中两个进行了命名: TCP TCP的特点 粘包问题处理 TCP一次性接收过多数据必然出现粘包,即不同时发送的数据黏连在一…

vue2项目从0搭建(一):项目搭建

前言: vue2项目可谓十分常见,国内大部分的前端码农应该都是用vue2技术在开发,虽然vue3和react等技术也有很多,但是占据绝大多数的中高级搬砖码农应该干的都是vue2技术的项目,就算现在很多人转战vue3技术了,但是维护原有vue2的项目应该也是很多的。 我本来是不打算写vue2的技术…

Java17新增特性

前言 前面的文章,我们对Java9、Java10、Java11、Java12 、Java13、Java14、Java15、Java16 的特性进行了介绍,对应的文章如下 Java9新增特性 Java10新增特性 Java11新增特性 Java12新增特性 Java13新增特性 Java14新增特性 Java15新增特性 Java16新增特…

Clickhouse学习笔记(14)—— Clickhouse监控

ClickHouse 运行时会将一些个自身的运行状态记录到众多系统表中,如下所示: 为了直观方便地监控ck的运行情况,使用Prometheus Grafana 的组合来进行监控 Prometheus 负责收集各类系统的运行指标;Grafana 负责可视化 Prometheus&a…

实体门店创新神器曝光,拓世法宝AI智能直播一体机助力商家快速惊艳逆袭

在这个飞速变革的时代,传统实体门店面临着多重挑战。为了迎接市场的巨大变化,许多实体门店迫切寻求创新的方法来吸引顾客的眼球。数字化手段和新技术的引入成为实体门店应对市场需求的重要选择之一,是应对激烈竞争和不断变化的消费者行为的有…

WGCLOUD的特点整理

做运维工作很多年了,项目中用过不少的运维软件工具,今天整理下WGCLOUD的特点(优点) 首先WGCLOUD是完全免费的 部署使用:部署简单方便,上手容易,几乎没有学习成本,对新手友好 文档…

thinkphp 自定义错误页面

在访问无效的UI 这个效果不好&#xff0c;要改成自定义的 <?php namespace app\controller;class ErrorController {public function __call($method,$args){return error request!;} }之后就是提示

hive更改表结构的时候报错

现象 FAILED: ParseException line 1:48 cannot recognize input near ADD COLUMN compete_company_id in alter table statement 23/11/14 17:59:27 ERROR org.apache.hadoop.hive.ql.Driver: FAILED: ParseException line 1:48 cannot recognize input near ADD COLUMN compe…

upload-labs关卡8(基于黑名单的点绕过)通关思路

文章目录 前言一、回顾上一关知识点二、靶场第八关通关思路1、看源代码2、点绕过3、验证文件是否成功上传 总结 前言 此文章只用于学习和反思巩固文件上传漏洞知识&#xff0c;禁止用于做非法攻击。注意靶场是可以练习的平台&#xff0c;不能随意去尚未授权的网站做渗透测试&am…

计算机毕业设计选题推荐-记录生活微信小程序/安卓APP-项目实战

✨作者主页&#xff1a;IT研究室✨ 个人简介&#xff1a;曾从事计算机专业培训教学&#xff0c;擅长Java、Python、微信小程序、Golang、安卓Android等项目实战。接项目定制开发、代码讲解、答辩教学、文档编写、降重等。 ☑文末获取源码☑ 精彩专栏推荐⬇⬇⬇ Java项目 Python…

跨国企业如何选择安全靠谱的跨国传输文件软件?

随着全球化的不断发展&#xff0c;跨国企业之间的合作变得越来越频繁。而在这种合作中&#xff0c;如何安全、可靠地将文件传输给合作伙伴或客户&#xff0c;成为了跨国企业必须面对的问题。 然而&#xff0c;跨国文件传输并不是一件容易的事情&#xff0c;由于网络物理条件的…

什么是代理模式,用 Python 如何实现 Proxy(代理 或 Surrogate)对象结构型模式?

什么是代理模式&#xff1f; 代理&#xff08;Proxy&#xff09;是一种结构型设计模式&#xff0c;其目的是通过引入一个代理对象来控制对另一个对象的访问。代理对象充当目标对象的接口&#xff0c;这样客户端就可以通过代理对象间接地访问目标对象&#xff0c;从而在访问过程…

【Python图像超分】Real-ESRGAN图像超分模型(超分辨率重建)详细安装和使用教程

1 前言 图像超分是一种图像处理技术&#xff0c;旨在提高图像的分辨率&#xff0c;使其具有更高的清晰度和细节。这一技术通常用于图像重建、图像恢复、图像增强等领域&#xff0c;可以帮助我们更好地理解和利用图像信息。图像超分技术可以通过多种方法实现&#xff0c;包括插值…