MySQL:插入,更新与删除、索引

article/2025/10/9 16:17:58

一、学习目标

  1. 掌握如何向表中插入数据
  2. 掌握更新数据的方法
  3. 熟悉如何删除数据
  4. 掌握对数据表基本操作的方法和技巧
  5. 了解什么是索引
  6. 掌握创建索引的方法和技巧
  7. 熟悉如何删除索引
  8. 熟悉掌握索引的常见问题

二、实验内容

  1. 创建表books,对数据表进行插入、更新和删除操作,掌握表数据基本操作。books表结构以及表中的记录如下所示

books表结构

字段名

字段说明

数据类型

主键

外键

非空

唯一

自增

id

书编号

INT(11)

name

书名

VARCHAR(50)

authors

作者

VARCHAR(100)

price

价格

INT(11)

pubdate

出版日期

YEAR

note

说明

VARCHAR(255)

num

库存

INT

books表中的记录

id

name

authors

price

pubdate

note

num

1

Tale of AAA

Dickes

23

1995

novel

11

2

EmmaT

Jane lura

35

1993

joke

22

3

Story of Jane

Jane Tim

40

2001

novel

0

4

Lovey Day

George Byron

20

2005

novel

30

5

Old Land

Honore Blade

30

2010

law

0

6

The Battle

Upton Sara

33

1999

medicine

40

7

Rose Hood

Richard Haggard

28

2008

cartoon

28

步骤如下:

①创建数据表books,并按books表结构定义各个字段

②将books表中的记录插入books表中

③将小说类型(novel)的书价格都增加5

④将名称为EmmaT的书价格改为40,并将说明改为drama

⑤删除库存为0的记录

  1. 创建数据库index_test,按照下面表结构在index_test数据库中创建两个数据表test_table1和test_table2,如下表所示,并按照操作过程完成对数据表的基本操作

test_table1表结构

字段名

数据类型

主键

外键

非空

唯一

自增

id

INT(11)

name

CHAR(100)

address

CHAR(100)

description

CHAR(100)

test_table2表结构

字段名

数据类型

主键

外键

非空

唯一

自增

id

INT(11)

firstname

CHAR(50)

middlename

CHAR(50)

lastname

CHAR(50)

birth

DATE

title

CHAR(100)

步骤如下:

①登录MySQL数据库

②创建数据库index_test

③创建表test_table1

④创建表test_table2,存储引擎为MyISAM

⑤使用ALTER TABLE语句在表test_table2的birth字段上建立名称为ComDateIdx的普通索引

⑥使用CREATE INDEX在title字段上建立名称为FTIdx的全文索引

⑦使用ALTER TABLE语句删除表test_table1中名称为UniqIdx的唯一索引

⑧使用DROP INDEX语句删除表test_table2中名称为ComDateIdx的唯一索引

1.1

create table books(id int(11) primary key not null unique,
name varchar(50) not null,
authors varchar(100) not null,
price int(11) not null,
pubdate year not null,
note varchar(255),
num int not null);

 1.2

insert into books(id,name,authors,price,pubdate,note,num)values(1,'Tale of AAA','Dickes',23,'1995','novel',11),
(2,'EmmaT','Jane lura',35,'1993','joke',22),
(3,'Story of Jane','Jane Tim',40,'2001','novel',0),
(4,'Lovey Day','George Byron',20,'2005','novel',30),
(5,'Old Land','Honore Blade',30,'2010','law',0),
(6,'The Battle','Upton Sara',33,'1999','medicine',40),
(7,'Rose Hood','Richard Haggard',28,'2008','cartoon',28);

 1.3

update books
set price=price+5
where note = 'novel';

1.4

update books 
set price=40,note='drama' 
where name='EmmaT';

1.5

delete from books where num=0;

 2.1-2.4

 create database index_test;use index_test;create table test_table1(id int not null unique auto_increment,
name char(100) not null,
address char(100),
description char(100));create table test_table2(id int primary key not null unique,
firstname char(100) not null,
middlename char(50) not null,
lastname char(50) not null,
birth date not null,
title char(100));alter table test_table2 engine=MyISAM;

 2.5

alter table index_test add index ComDateldx(birth);

 2.6

 create fulltext index FTIdx on test_table2(title);

2.7 

//先创建再测试删除,否则报错
create unique index Uniqldx on test_table1(name); 
//不一定非要创建在name上,但不能创建在已有唯一约束的字段上alter table test_table1 drop index Uniqldx;

2.8 

//由于事先已创建过同名索引,不需要再创建,虽不是唯一索引但是删除方式一样
drop index ComDateldx on test_table2;

 


http://chatgpt.dhexx.cn/article/hZrh3yGX.shtml

相关文章

搜索引擎索引之如何更新索引

本文节选自《这就是搜索引擎:核心技术详解》第三章 动态索引通过在内存中维护临时索引,可以实现对动态文档和实时搜索的支持。但是服务器内存总是有限的,随着新加入系统的文档越来越多,临时索引消耗的内存也会随之增加。当最初分…

IDEA总是自动更新索引怎么解决

从File进入settings 搜索index_>修改右边的两个即可,点击OK保存即可

项目中如何使用ElasticSearch?变更数据时难道既更新数据库也要更新索引?这篇文章也许对你有点帮助(持续更新)

目录 1. 概述2.ElasticSearch的调试2.1 启动ES2.2 创建搜索的微服务2.3 使用logstash同步数据库数据到es的索引中 3.Linux系统下部署3.1 拉取es容器3.2 让9300端口可用3.3 安装ik分词器3.4 安装head-master3.5 配置logstash(耗时最久) 四. 出现的bug4.1 …

【Mysql】 sql语句实现update_or_create(唯一索引 ON DUPLICATE KEY UPDATE)

【Mysql】 on duplicate key update用法、优缺点以及使用案例 1. 应用场景: 导入数据功能,需要实现数据不存在时进行新建,有数据修改时则进行更新。在实现时,思路通常为先判断数据是新增还是更新,除了我们在代码层面实…

mysql-索引

1.索引的定义: 索引是帮助MySql高效获取数据的数据结构。在数据之外,数据库系统还维护着满足特定查找算法的数据结构,这些数据结构以某种方式引用数据,这样就可以在这些数据结构上实现高级查找算法,这种数据结构就是索…

mysql中的各种索引大总结

文章目录 为啥不用二叉搜索树?为啥不用平衡二叉(avl)树?为啥不用b-树?为啥用b树?(重点)索引聚簇索引聚簇索引的局限聚集的数据的优点非聚簇索引介绍组合索引覆盖索引前缀索引前缀索引…

MySQL索引的更新策略

对于数据的每一次更新,MySQL并不会每次都会更新索引(针对非唯一性索引而言),索引的更新策略是这样的: 在InnoDB中,增删改都会立刻修改主键or唯一索引,但是不会rebuild全局索引,而是对这些索引增加值(或移除…

苹果各机型尺寸大小

//6.5英寸 #define iPhoneXSMax ([UIScreen instancesRespondToSelector:selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(1242, 2688), [[UIScreen mainScreen] currentMode].size) : NO) //6.1英寸 #define iPhoneXR ([UIScreen instancesRespondToSelector:selec…

iOS 手机尺寸

iPhone设备 物理分辨率是硬件所支持的,逻辑分辨率是软件可以达到的。 代数设备操作系统逻辑分辨率(point)物理分辨率(pixel)屏幕尺寸(对角线长度)缩放因子 iPhone 第一代iPhone 2GiOS 1320 x 480480 x 3203.5寸1x第二代iPhone 3iOS 2320 x 480480 x 3203.5寸1…

jQuery weui 时间选择器datetimepicker年月日最简单解决方案

使用jqweui的时候发现,datetimePicker(时间日期选择器)竟然不提供只有年月日这种模式,真是牛逼(垃圾),跟着我,只需要很简单的修改就好了,上图 下面是js $("#datati…

jquery weui 显示loading

jQuery weui 显示loading按钮官方文档并没有给出demo&#xff0c;经过调试&#xff0c;把代码给拷贝了出来。 实现显示loading的代码如下&#xff1a; <div id"loadDiv" style"display: none;" class"weui-toast weui_loading_toast weui-toast--…

$ppclass php,jquery weui

"weui-tab"!----"weui-"!--二级页积分详情--"""weui--itemweui-tab__bd-item--active"divclass"details"divclass"page-header"?Html::img($this-theme-getAssetUrl(images/logo.png),[classlogo])?/divahref&q…

移动端框架之JQuery WeUI

和JQuery WeUI 配合使用的WeUI&#xff0c;是移动端快速开发的利器。 在初步使用的过程中&#xff0c;发现JQuery WeUI扩展的几个功能特别实用&#xff1a; 1.通知&#xff1a;模仿iOS风格的通知。你可以自定义标题&#xff0c;文案和图标。通过滑动手势可以关闭。 这种通知形…

基于Jquery WeUI的微信开发H5页面控件的经验总结(2)

在微信开发H5页面的时候&#xff0c;往往借助于WeUI或者Jquery WeUI等基础上进行界面效果的开发&#xff0c;由于本人喜欢在Asp.net的Web界面上使用JQuery&#xff0c;因此比较倾向于使用 jQuery WeUI&#xff0c;本篇随笔结合官方案例和自己的项目实际开发过程的经验总结&…

jquery weui 图片浏览器Photo Browser 如何使用?

对应组件地址&#xff1a;http://jqweui.com/extends#swiper 先说说业务场景&#xff1a;类似朋友圈这样的布局效果&#xff0c;点击小图可以浏览大图&#xff0c;并支持大图左右切换&#xff0c;效果图如下&#xff08;加了滚动加载更多的操作在里面&#xff09;&#xff1a;…

jQuery WeUI日历calendar时间段(开始日期默认选中日期是今天,结束日期设置最小日期),显示日期格式是yyyy年mm月dd日

jQuery WeUI官网&#xff1a; https://jqweui.cn(国内) 说明 日历calendar时间段为两段&#xff0c;开始日期和结束日期。 开始日期&#xff1a;打开后&#xff0c;默认选中日期是今天。 结束日期&#xff1a;打开后&#xff0c;默认选中和最小日期是开始日期。 html <d…

【WeUI】关于jQuery WeUI和WeUI版本兼容的问题

最近做的一个小demo&#xff0c;在添加Dialog的时候出现了对话框显示的问题&#xff0c;如下左图所示。 一开始以为自己的写的CSS文件影响了&#xff0c;注释掉还是这个问题&#xff0c;所以问题指向很明确了&#xff0c;是官方weui.css的问题。但是官方demo里的运行是正常显示…

jQueryWEUI自定义对话框-带有textarea

jQueryWEUI 示例下载 在jQueryWEUI中提供了很多类型的对话框&#xff0c; 可以去访问看一下。 今天记录的则是&#xff0c;自己定义的一个带有文本域的对话框&#xff0c;这样&#xff0c;可以不通过调转页面&#xff0c;实现一些信息的提交。比如&#xff0c;发送留言&#x…

jQuery weui 时间选择器datetimepicker只用年月日

<input placeholder"请选择出生日期" name"birth_time" type"text" iddatetime-picker />let allTime ;var myDate new Date();//let CreateDateLessD myDate.getFullYear() "-" (myDate.getMonth() 1) "-" …

关于Jqueryweui 的select联动用法

在使用Jquery weui 框架时&#xff0c;我想实现根据收货地址获得该条收货地址的绑定的联系人和电话。 但是又懒得根据收货地址查询联系人和联系电话。&#xff08;因为收货地址都是从数据库获取的&#xff0c;此时不仅拿到了收货地址&#xff0c;还拿到了联系人和联系电话&…