首页 > 数据库 >MYSQL基础知识之DML

MYSQL基础知识之DML

时间:2024-07-24 19:24:33浏览次数:17  
标签:classid insert -- into DML 基础知识 values student MYSQL

数据库备份与还原

  • 备份

 mysqldump.exe -h localhost -P 3306(端口号)  -u root  -p 库名 > E:/库名20240719.sql
  • 还原

 mysql.exe -h 106.55.169.91 -P 3306 -u root -p haha < E:/xiao2.sql

数据表的新增

 insert into 表名 (字段名,字段名,....,字段名)  values/value (值,值,...,值);
全字段的插入(2个方式)
  •  insert into 表名 (字段1,字段2) values(字段1值,字段2值);
  •  insert into 表名 values(字段1值,字段2值);
 -- 方式一
 insert into student (sid,sname,birthday,ssex,classid)
 values(9,'张三','2007-1-1','男',1);
 -- 方式二
 insert into student values(null,'李四','1989-1-1','男',2);
 insert into student values(default,'李四','1989-1-1','男',2);
 ​
 -- 部分字段插入
 insert into student(sname,ssex) values ('齐同学','女');
 ​
 -- 给性别设置了非空约束,非空约束不写值就要写一个default
 alter table student modify ssex varchar(10) not null;
 -- 非空约束不写值就要写一个default,
 --否则会报错: 1364 - Field 'ssex' doesn't have a default value
 insert into student(sname) values('王小熊');
 ​
 alter table student modify ssex varchar(10) not null default '保密';

一次性添加多条数据(3种)
  •  insert into 表名 (字段名..) values(值..),(值..)...
 -- 方式一(常用)
 -- insert into 表名 (字段名..) values(值..),(值..)...
 insert into student(sname,ssex)
 VALUES('杨月','男'),('周晓','女'),('冯顺','男');
 ​
 -- 方式二(不常用)
 -- insert into select
 -- 插入和被插入的表都必须存在
 create table newstu(
     xingming varchar(10),
     xingbie varchar(10),
     classid int
 );
 insert into newstu(xingming,xingbie,classid)
 select sname,ssex,classid from student;
 ​
 -- 方式三(不常用)
 -- create table select
 -- 被插入的表不能存在
 -- 被插入的表没有任何约束
 ​
 create table stu1
 select sid,sname,birthday from student;
 ​

数据表的修改

  update 表名 set 字段名=值,字段名=值,....,字段名=值
  [where 子句条件]
  -- where子句 中的条件是对表中的每一条数据进行判断,
  -- 判断成立该数据的父句执行,
  -- 判断不成立该数据的父句不执行
 update stu1 set birthday='2002-2-2'
 where sname='李云';
 ​
 -- 修改newstu表中xingbie不等于女的人classid设为300
 update newstu set classid=30 where xingbie <> '女';

 -- 修改newstu表中xingbie不等于男的人classid设为200
 update newstu set classid=200 where xingbie != '男';

 -- 修改newstu表中classid 小于260的,将其性别改为保密
 update newstu set xingbie='保密' where classid < 260; 

 -- 修改newstu表中classid在30至60之间的人,将其性别改为外星人
 update newstu set xingbie='外星人' 
 where classid >= 30 and classid <= 60;

 -- 30 50 70 他们的性别变为地球人
 update newstu set xingbie='地球人'
 where classid = 30 or classid = 50 or classid =70; 

数据表的删除

 delete from 表名 [where子句]
 //删除stu1表中sid为1的
 delete from stu1 where sid=1;

清空表

 truncate 表名

drop、delete、truncate区别

delete只删数据

drop不仅把数据删掉,还删除了索引,表结构也删了

truncate不仅把数据删掉,还删除了索引

标签:classid,insert,--,into,DML,基础知识,values,student,MYSQL
From: https://blog.csdn.net/m0_63016075/article/details/140671390

相关文章

  • 网络安全基础知识及安全意识培训(73页可编辑PPT)
    引言:在当今数字化时代,网络安全已成为企业和个人不可忽视的重要议题。随着互联网的普及和技术的飞速发展,网络威胁日益复杂多变,从简单的病毒传播到高级持续性威胁(APT)、勒索软件攻击、数据泄露等,无一不对网络安全构成了严峻挑战。因此,开展网络安全基础知识及安全意识培训,对于提升......
  • WEB:Mysql 备份与多表设计 - 04
     mysql数据库的备份与恢复备份数据库:cmd窗口中使用mysqldump备份数据库mysqldump-uroot-pdb_name> c:/xxx.sql例如:mysqldump-uroot-pmydb2 > c:/mydb2.sql恢复数据库:方式1:cmd窗口中使用mysql命令恢复数据库,注意,只能恢复数据库中的数据,不能恢复数据......
  • Linux 必备基础知识与常用命令大汇总
    这是我整理的关于Linux基础知识的笔记,主要为了方便在长期不用Linux的情况下,突然需要使用时可以快速查找。我最初有些犹豫是否应该写成文章,但我认为对于处于相似境遇的人来说,能够方便地复制和使用这些知识会很有帮助,所以决定将其分享出来。虽然MacOS不是Linux,而是BSD系系统,但我......
  • MySQL 如何拥有针对特定主机的单一用户账户
    MySQL如何拥有针对特定主机的单一用户账户?通常,我们会创建用户名相同但主机/IP不同的独立用户账户,如<USER>@<HOST1>,<USER>@<HOST2>....。<USER>@<HOSTn>。然后,给予这些用户相同的授权(权限/角色)和设置(密码、SSL等)。 除了以上的做法,可以创建一个可以从所有主机连接的......
  • MySQL(1)
    文章目录概述数据库OLTPOLAPSQLDQLDMLDDLDCLTCLMYSQL连接池管理服务和工具组件SQL接口查询解析器查询优化器缓冲组件CRUD创建数据库删除数据库选择数据库创建表删除表清空数据表增删改查小结概述数据库**按照数据结构来组织、存储和管理数据的仓库;**是一个长期存......
  • MySQL 学习笔记 基础(多表查询下,事务)
    多表查询 多表查询-子查询概念:SQL语句中嵌套SELECT语句,称为嵌套语句,又称子查询。SELECT*FROMt1WHEREcolumn=(SELECTcolumn1FROMt2);子查询外部的语句可以是INSERT/UPDATE/DELETE/SELECT的任何一个。根据子查询结果不同,分为:·标量子查询......
  • MySQL中多表查询之外连接
     首先先来介绍一下我做的两个表,然后再用他们两个举例说明。--创建教师表createtableteachers(id_tintprimarykeyauto_increment,--老师编号name_tvarchar(5)--姓名);--创建学生表createtablestudents(id_sintprimarykeyauto_increment,--编号na......
  • CSS 基础知识
    CSS(级联样式表)是设置Web内容样式的代码。CSS基础知识将介绍入门所需的内容。我们将回答以下问题:如何将文本设置为红色?如何使内容显示在(网页)布局中的某个位置?如何用背景图片和颜色装饰我的网页?什么是CSS?像HTML一样,CSS不是一种编程语言。它也不是一种标记语言。CSS是一种......
  • JavaScript 基础知识
    JavaScript是一种编程语言,可为您的网站增加交互性。这发生在游戏中,在按下按钮或在表单上输入数据时的响应行为中;具有动态样式;带有动画等。本文可帮助您开始使用JavaScript,并进一步了解可能的情况。什么是JavaScript?JavaScript 是一种功能强大的编程语言,可以为网站......
  • MYSQL中SHOW PROCESSLIST使用
    SHOWPROCESSLIST是显示用户正在运行的线程,需要注意的是,除了root用户能看到所有正在运行的线程外,其他用户都只能看到自己正在运行的线程,看不到其它用户正在运行的线程。除非单独个这个用户赋予了PROCESS权限。通常我们通过top检查发现mysqlCPU或者iowait过高那么解决这些问题......