首页 > 数据库 >第6节-MySQL表增、删、改

第6节-MySQL表增、删、改

时间:2022-12-31 15:00:33浏览次数:32  
标签:sdept 表增 测试 -- sno 计算机系 student MySQL

1、测试表结果

create table student(
    sno varchar(20) primary key,
    sname varchar(20),
    sex enum('男','女'),
    age int,
    sdept varchar(20)
);

2、增

2.1、单条插入

insert into student(sno,sname,sex,age,sdept) values('95001','测试1','男',18,'计算机系');
-- 或者 下面字段必须要表格的结构字段排列一致
insert into student values('95002','测试2','男',19,'计算机系');

2.2、多条插入

insert into student(sno,sname,sex,age,sdept) values('95003','测试3','男',28,'计算机系'),('95004','测试4','女',29,'计算机系');

2.3、复制表数据

-- 复制表结构
create table student_copy like student;

-- 查询复制数据
insert into student_copy select * from student;

2.4、使用replace插入数据

-- repalce介绍:使用repalce时,首先尝试插入到数据表中,若检测表中已经有记录(通过主键或唯一约束判断),则先删除此记录,然后再插入新的数据
-- 修改前的数据:
mysql> select * from student;
+-------+---------+------+------+--------------+
| sno   | sname   | sex  | age  | sdept        |
+-------+---------+------+------+--------------+
| 95001 | 测试1   | 男   |   18 | 计算机系     |
| 95002 | 测试2   | 男   |   19 | 计算机系     |
| 95003 | 测试3   | 男   |   28 | 计算机系     |
| 95004 | 测试4   | 女   |   29 | 计算机系     |
+-------+---------+------+------+--------------+

replace into student(sno,sname,sex,sdept) values('95003','测试3','男','计算机系');

-- 修改后的数据:
mysql> select * from student;
+-------+---------+------+------+--------------+
| sno   | sname   | sex  | age  | sdept        |
+-------+---------+------+------+--------------+
| 95001 | 测试1   | 男   |   18 | 计算机系     |
| 95002 | 测试2   | 男   |   19 | 计算机系     |
| 95003 | 测试3   | 男   | NULL | 计算机系     |
| 95004 | 测试4   | 女   |   29 | 计算机系     |
+-------+---------+------+------+--------------+

 

3、改

3.1、修改单列

update student set ssex='男' where sno='95001';

 

3.2、修改多列

update student set ssex='女',age=25 where sno='95001';

 

3.3、concat函数的使用

-- 主要作用是链接字符串,这里sdept开头,增加'学院-'
update student set sdept=concat('学院-',sdept) where sno='95001';

 

4、删

4.1、删除数据

delete from score where sno='95001';

 

4.2、删除整张表【注意:谨慎操作】

delete from score;

-- truncate 会删除自增长的记录,置为0,重新开始
truncate score;

 

标签:sdept,表增,测试,--,sno,计算机系,student,MySQL
From: https://www.cnblogs.com/ygbh/p/17016651.html

相关文章

  • Centos安装Mysql
    Centos安装MysqlCentos通过下载安装包方式进行安装Mysql,Centos版本7.9,Mysql版本8.0.31#查看Centos版本cat/etc/redhat-release#查看mysql版本mysql--versionmysq......
  • MySQL密码策略审计,提升安全
    背景:审核密码是否符合规范,如大小写、数字、特殊字符等安装插件:1、在线启动INSTALLPLUGINvalidate_passwordSONAME'validate_password.so';2、写入配置文件plugi......
  • 认真学习MySQL中锁机制(二)
    接上文​​认真学习MySQL中锁机制(一)​​我们继续学习MySQL中的锁机制。【5】按加锁的方式划分:显示锁、隐式锁①隐式锁一个事务在执行insert操作时,如果即将插入的间隙已经被......
  • SQLAlchemy连接MySQL及记录的查询、更新、删除、多表关联查询
    SQLAlchemy是Python的ORM库,支持多种数据库。建立连接连接MySQL要用到​​Engine​​,Engine集成了连接池pool和方言Dialect(支持不通数据库的SQL语法),最后都统一成标准DBAPI。f......
  • Docker运行mysql
    1、拉取mysql5.7镜像dockerpullmysql:5.72、创建用于挂载的目录(日志目录、数据目录、配置目录) 3、在conf目录下创建my.cnf配置文件my.cnf内容如下:[mysqld]......
  • MySQL报错解决
    1mysql报错解决mysql>grantallon*.*to"dba"@"%"identifiedby"mysql123";ERROR1819(HY000):Yourpassworddoesnotsatisfythecurrentpolicyrequirement......
  • MySQL slave upgrade: Slave failed to initialize relay log info structure from th
    MySQL slaveafterupgradefrom 5.6.x to 5.7.x maythrowthefollowingerror:12mysql>STARTSLAVE;ERROR1872(HY000):Slavefailedtoinitiali......
  • mysql调优
    一、insert调优1、插入多条数据时最好批量插入(但一般不超过一千条)2、手动提交事务,多条语句一起提交starttransaction;insertintotablevalues(),(),();......
  • mysql有关事务与Lock之间的爱恨情仇
    MySQL基础属性查询查询事务提交机制mysql>select@@autocommit;+--------------+|@@autocommit|+--------------+|0|+--------------+1rowi......
  • mysql的登录注册和连接他人数据库以及卸载
    mysql的登录参数:mysql-u用户名-p密码mysql的登录参数2:mysql-u用户名-p ,然后会提示你输入密码mysql的登录参数加连接他人数据库::mysql-u用户名-p密码-h要连接my......