MySQL从使用到进阶

pdb文件删除杂原子 HETATM;保留或去除水分子 这样操作水分子也会跟着删除,如果需要保留水分子。 阅读详情

1.关系型数据库中的佼佼者

MySQL作为众多的关系型数据库中的一员,其具有服务轻量级,服务易于搭建和维护。提供多种客户端连接语言的数据库服务器。

2.MySQL数据库服务器

3. MySQL 数据库服务器的优化方案

 由于MySQL 数据库具有读写锁的特性。在高并发的情况下,同时对一条数据进行读写操作,性能会很低。
 优化方案:主从复制,实现读写的分离。

4. MySQL 数据库的创建

数据库的创建一般:注意创建数据库的编码格式即可。

注意事项:

  1. 分库中,保持数据操作的事务。持久化到不同数据库中数据的事务(了解)。
  2. 数据量大的时候,实现分库的方案。

5.Mysql 数据表的创建

  • 表名称创建,遵循命名规范。表的设计遵循三范式。数据库三范式

  • 表中字段的设计:

         字段类型主要分为以下几种:
         (1)字符类型 varchar,char
              varchar(20)可以存储多少汉字
         (2)数字类型: 整数类型,小数类型,精确的数据类型 decimal
               int(11)含义
         (3)时间类型:Date,时间戳
    

6. Mysql 索引(重点)

  索引的原理:
  索引的优缺点:所有的软件设计中,有优点就一定会有缺陷
6.1 索引的种类
  1. 单列索引:主键索引,唯一键索引,普通索引

    主键索引和主键索引的区别:
    1.主键索引只能有一个,唯一键索引可以有多个
    2.主键索引不能为null,唯一键索引可以有多个null 值
    
  2. 组合索引:联合索引

    联合索引创建的原则:最左匹配原则(重点)
    
  3. 全文索引:myisam存储引擎中特有的索引类型(了解)

  4. 聚集索引(重点)

  5. 非聚集索引

6.2 索引的原理 B+ tree

1.树数据结构详解
二叉树,二叉查找树,平衡二叉查找树,AVL 树,红黑树,B 树
B+树

 注意,平衡二叉树属于平衡树,不属于B树
    B 树:非叶子节点 孩子节点为M  M>2 不是等于2
    B+ 属于多路查找的平衡树

2.数据库索引文章

3.索引原理

6.3 索引使用事项
  • 索引创建的原则:
  • 慢查询优化,mysql索引失效

7. Mysql 存储引擎

MySQL主要的存储引擎主要分为:innodb,myisam

  • 索引类型不同:innodb默认采用的聚集索引,索引和数据存储到同一个文件中。myisam 采用的是非聚集索引,索引文件和数据文件分开存储。
  • innodb支持外键,myisam不支持。
  • innodb支持事务,myisam不支持。
  • innobd默认采用行锁,myisam 默认表锁。
  • myisam 支持全文检索。

8.Mysql 中的事务(重点)

8.1 事务特性:ACID
  • 原子性
  • 一致性
  • 隔离性
  • 持久性
8.2 并发访问出现的问题
  1. 脏读
  2. 不可重复读
  3. 幻读
8.3 事务的隔离级别
  • 读未提交
  • 读已提交
  • 可重复读
  • 串行化

9.Mysql 数据表中数据的操作

9.1 数据的增删改
9.2 数据的查询(重点)
YOLO11实战优化:暗光环境检测 | 引入Retinex增强模块与YOLO11联合训练,解决夜间/低照度场景抓拍痛点 本文探讨了暗光环境下目标检测的技术挑战与解决方案。研究发现,传统CNN模型在低照度条件下性能显著下降,主要由于光子数减少导致信噪比降低、目标特征被噪声淹没。针对这一问题,文章提出将可微分光照增强模块嵌入YOLO检测器的技术路线,重点分析了Retinexformer+YOLO11联合方案的优势。 文章对比了YOLO系列模型在暗光场景的表现,指出YOLO11凭借其C3k2模块、无锚检测头和多任务统一骨干网络,在低对比度图像特征提取方面优于前代产品。同时详细介绍了Retinexformer的理论基础和技术创新,包 阅读详情

相关推荐

OLED的字模提取(保姆级)---基于PCtoLCD2013

做为一个刚刚开始接触编程不久的白菜,这个OLED想做一个信息显示,可是商家给我的例程里就是88,816两种字体的格式,我的屏幕是0.91寸的8*16的字体显示上感觉特别丢丢儿小,我就想整个大的,哎,只怪直接学习习惯不好,总是学一半,绕了好大一圈,才搞好,想写一篇博客,时刻提醒踏实学习,第一次写博客,小白一枚,勿喷。。 OLED屏幕驱动程序功能 我们对Markdown编辑器进行了一些功能拓展与语法支...

qq_44886611的博客 7781

MYSQL窗口函数(Rows & Range)——滑动窗口函数用法

总结SQL开窗函数中range 和rows的用法,实现滑动窗口计算功能。

WHYbeHERE的博客 1万+

单相变换器的二次纹波分析

1. 单相PWM整流器的二次纹波产生原因   单相变换器的二次纹波产生的原因是功率含有二次脉动分量。设电网电压 us=Vmsin(wt),电网电流IL=Imsin(wt−θ)I_L=I_msin(wt-\theta)IL​=Im​sin(wt−θ)。其中w是电网电压披绿,θ\thetaθ是电流之后电压相位。保证输入功率和输出功率相等,就要保证两者的直流量和交流量对应相等。   uDu_DuD​为 PWM 整流器直流电容电压平均值,IoI_oIo​ 为负载电流平均值 ,uDC^\widehat {u_{DC}

qq_38847810的博客 4973

mysql累积滚动_在一段时间内在mysql中创建滚动总和

我有一个表,其中包含date和time_spent列.我想为每个日期D查找一段时间内“ time_spent”值的总和:(D-7-D),即.过去一周的当前日期.我找不到解决办法,因为我只能找到一个总和的示例,而不是一个可变时间段内的总和.这是一个数据集示例:CREATE TABLE rolling_total(date date,time_spent int);INSERT INTO rollin...

weixin_32652107的博客 448

SWMM建模与案例应用

4、排水系统控制规则通过控制功能,可以在模拟进行过程中,通过条件判断,对闸门、水泵、管道、孔口、堰进行控制,实现排水系统实时控制。5、SWMM与其他模型对比分析分析:STORM、MOUSE、Info Works、SUSTAIN、SWC。1、模型初始设置主要参数:雨量计、汇水区、节点、出水口、管渠、分流器、蓄水池等参数前缀的设置。2、气象数据设置温度、蒸发、风速、融雪、面积亏损、气候调整、雨量计。1、多软件数据交互:CAD、Arcgis、SWMM。(1)节点、管段、水泵、孔口、堰、雨水口和街道。

m0_74575633的博客 3417

地质工程师必备:Dips软件从数据导入到主结构面分析的完整流程解析

本文详细解析了地质工程师使用Dips软件进行主结构面分析的完整流程。从数据准备与导入、结构面分组与扇形区划分,到主结构面计算与工程解读,系统阐述了如何将野外节理数据转化为控制岩体稳定性的关键信息。重点介绍了利用等值线图识别优势组、计算统计主值及其置信椭圆,并强调了地质判断与工程应用结合的重要性。

table的专栏 340

mysql rolling back_Mysql 死锁的详细分析方法

用数据库的时候,偶尔会出现死锁,针对我们的业务系统,出现死锁的直接结果就是系统卡顿、客户找事儿,所以我们也在想尽全力的消除掉数据库的死锁。出现死锁的时候,如果只是想解锁,用show full processlist看下kill掉就好了,如果想查找到详细的问题,一个办法是用show engine innodb status来查看简略信息或者开死锁日志,后期在mysql日志里面慢慢分析。以上这写方法我...

weixin_42340136的博客 6865

Agile Modbus使用和学习笔记

i < len;这里仅仅需要提供获取函数即可,离散输入是只读类型i++) {return 0;只读类型寄存器i++) {return 0;i < len;

Car12 167

mysql rolling back_MySQL事务没有回滚错误(MySQL transaction not rolling back on error)

MySQL事务没有回滚错误(MySQL transaction not rolling back on error)我的过程是这样的:DECLARE EXIT HANDLER FOR SQLEXCEPTIONBEGINselect varerrmsg as ErrorMsg;ROLLBACK;END;START TRANSACTION;SELECT ...INSERT ...UPDATE ...I...

weixin_31582099的博客 2035

从0到1:用Claude 3.7十日拿下教育部课题申报书(附可修改LaTeX模板)

🟣"作为教育部人文社科项目评审专家,请根据近三年立项数据分析,为[您的学科方向]领域推荐5个具有创新性且符合'十四五'规划的重点选题,要求选题体现交叉学科特征,并标注潜在理论突破点"🟣"根据前期研究基础,创建包含4个研究模块、12个关键节点的三维技术路线图,要求体现实验仿真-实证研究-理论建模的螺旋递进关系,并标注每个节点的预期成果形态"🟣"现在切换至教育部学科评审组组长模式,从选题价值、创新程度、研究可行性三个维度对本申报书进行盲审,生成包含9个扣分风险点的诊断报告及修改优先级排序"

智能AI让学术科研更容易 543

手把手教你学Simulink实例--基于Simulink的电力电子系统电池管理系统(BMS)设计与仿真实例

本文详细介绍了基于Simulink的电池管理系统(BMS)设计与仿真全过程。首先阐述了BMS在安全防护、寿命延长和性能优化方面的必要性,分析了新能源汽车、光伏储能等典型应用场景的技术指标要求。接着详细讲解了Thevenin等效电路和多电平电池模型构建方法,并给出SOC估算、故障诊断等核心算法的MATLAB实现代码。通过设计正常充放电、过充保护等多场景仿真测试,验证了系统在SOC跟踪精度(误差<1.5%)和故障响应速度(<10ms)方面的优异性能。文章还提出了参数优化方法和未来AI融合、数字孪生等发展方向,提

xiaoheshang_123的博客 376

进阶MySQL使用指南

在掌握了MySQL的基础使用之后,你可能会对如何更高效地使用MySQL感兴趣。本文将介绍一些进阶技巧,包括索引的使用、事务处理、连接查询等,以帮助你更深入地了解MySQL的强大功能。

Mortal3306的博客 999

Python爬虫实战:2026最新版淘宝商品详情页数据抓取与价格监控

在2026年的今天,电商数据已经成为商业决策、市场分析和价格策略制定的核心资产。淘宝作为中国最大的电商平台之一,其商品详情页包含了海量有价值的信息:商品标题、价格、销量、评价数、店铺信息、SKU属性等。对于从事电商运营、竞品分析、价格监控的从业者来说,能够高效、稳定地获取这些数据至关重要。然而,淘宝平台的反爬虫策略在2026年已经演进到了相当成熟的阶段。

2201_76125261的博客 887

MySQL查询进阶——从函数到表连接的使用你还记得吗_mysql 熟悉吗 用过子函数表连接哪些吗

✅作者简介:C/C++领域新星创作者,为C++和java奋斗中📃推荐一款模拟面试、刷题神器👉🔥前言书接上文,今天学习查询的进阶操作,包括。

weixin_49617799的博客 791

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

MySQL查询进阶——从函数到表连接的使用你还记得吗_mysql 熟悉吗 用过子函数表连接哪些吗 (1)

📃推荐一款模拟面试、刷题神器👉🔥前言书接上文,今天学习查询的进阶操作,包括。

2401_85015259的博客 852

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

【MySQL进阶使用语句与语法】

MySQL作为最流行的开源关系型数据库之一,广泛应用于各类互联网项目。掌握基础的增删改查(CRUD)后,进一步学习MySQL的进阶语法和优化技巧,将极大提升开发效率和系统性能。本文将系统介绍MySQL进阶用法,包括复杂查询、窗口函数、子查询、索引优化、事务控制等内容,并结合实际案例进行讲解。本文介绍了MySQL进阶语法和常用优化技巧,掌握这些内容可以帮助你写出更高效、更健壮的SQL语句。建议大家多实践、多用EXPLAIN分析SQL执行计划,持续优化数据库性能。如有问题或建议,欢迎评论区留言交流!

bojikeqian的博客 438

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

【MySQL 进阶之路】索引的使用

在数据库管理系统(DBMS)中,索引是提高查询效率的关键机制之一。MySQL索引优化是指通过设计、调整和选择合适的索引策略,以提高数据库的查询性能和降低资源消耗。

ajsbxi的博客 1084

MySQL 进阶使用【函数、索引、视图、存储过程、存储函数、触发器】

MySQL 进阶使用

功不唐捐,玉汝于成 1829

MySql进阶使用之视图、索引(详解)

今天给大家带来分享有关MySql进阶使用的知识分享,希望能给大家带来帮助,请认真阅读。接下来跟着我们的思维导图一起来看看吧。视图(View)是在数据库中创建的虚拟表,它基于查询的结果集。它是通过使用存储在数据库中的数据来动态生成的,但在物理存储上并不保留数据。视图可以被视为一个存储了特定数据的虚拟表,类似于物理表,但实际上并不存储任何数据。视图可以由一个或多个表的列组成,并且可以根据需求进行筛选、过滤、排序和聚合等操作。它提供了一种简化和抽象的方式来访问和处理数据库中的数据。

weixin_74352229的博客 1466

MYSQL进阶使用(一)

文章目录MYSQL高级视图何为视图:定义视图:查看视图:使用视图:删除视图:视图的作用:事务:事务是什么?事务四大特性(ACID):1.原子性:2.一致性:3.隔离性:4.持久性:事务命令:查看表的创建语句:开启事务:提交事务:回滚事务:提交事务:回滚事务: MYSQL高级 视图 何为视图: 视图就是一条select语句执行后返回的结果的集合 视图时对很多张表的引用,一张虚表,查询语句执行的结果,但不会储存具体的数据 注:基本表数据发生了改变,视图也会跟着改变 定义视图: 代码: create view 视

Little_Fish_KEKE的博客 930

MySQL进阶——索引使用规则

在上篇文章我们学习了,这篇文章学习MySQL进阶——索引使用规则。

霖hero 892

【MySQL】MySQL数据库的进阶使用

对表的CURD操作,聚合函数,group by、having、order by,limit等关键字的使用,MySQL内置函数,MySQL多表查询,子查询,内连接,左外连接,右外连接,

The porters of knowledge 828

mysql的进阶使用(备份)

1.mysql配置文件 mysql的配置文件为/etc/my.cnf 配置文件查找次序:若在多个配置文件中均有设定,则最后找到的最终生效 /etc/my.cnf --&gt; /etc/mysql/my.cnf --&gt; --default-extra-file=/PATH/TO/CONF_FILE --&gt; ~/.my.cnf mysql常用配置文件参数: 参数 说明 ...

weixin_44435182的博客 180

【进阶】MySQL中如何使用索引

前言 学完基础的MySQL知识,以及MySQL的增删改查,我们要学习一些性能方面的东西。今天来讲一下索引(Index)。 索引 在关系数据库中,索引是一种单独的、物理的数对数据库表中一列或多列的值进行排序的一种存储结构,它是某个表中一列或若干列值的集合和相应的指向表中物理标识这些值的数据页的逻辑指针清单。索引的作用相当于图书的目录,可以根据目录中的页码快速找到

数据之魅的博客 1179

MySQL进阶使用

【第一章】约束【重点】 外键约束 问题:什么是外键约束以及外键约束的作用是什么? 当一个表中需要使用到另一个表的的数据时,但是又要保证数据的正确性,可以是用外键约束。如下图。 外键约束语法 CONSTRAINT 外键名 FOREIGN KEY (本表外键列名) REFERENCES 主表名(主表主键列名) 添加外键 建表时添加外键 -- 创建user用户表(主表) CREATE TABLE USER( id INT PRIMARY KEY AUTO_INCREMENT, -- i

TheKeyFigure的博客 730

【MySQL进阶】索引使用

因为索引是用来索引少量数据的,如果通过索引查询返回大批量的数据,则还不如走全表扫描来的快,此时索引就会失效。可以根据索引的选择性来决定,而选择性是指不重复的索引值(基数)和数据表的记录总数的比值, 索引选择性越高则查询效率越高, 唯一索引的选择性是1。尽量使用联合索引,减少单列索引,查询时,联合索引很多时候可以覆盖索引,节省存储空间, 避免回表,提高查询效率。存在,索引就会生效,只不过索引的长度不同。要控制索引的数量,索引并不是多多益善,索引越多,维护索引结构的代价也就越大,会影响增删改的效率。

Javascript_tsj的博客 1573
上一篇: 有了ThreadPoolExecutor,还有Thread什么事
下一篇: 从总结中更加深刻认识redis
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值