【重生之我在B站学MySQL】

news2024/12/24 7:55:15

MySQL笔记

文章目录

  • MySQL的三层结构
  • SQL语句分类
  • sql语句
    • 数据库操作
      • 创建数据库
      • 查看、删除数据库
    • 表操作
      • 创建表
      • mysql常用数据类型(列类型)
      • 查询表、插入值
      • 创建表练习
        • 创建一个员工表emp
      • 修改表
      • mysql约束
        • primary key(主键)
        • not null(非空)
        • unique(唯一)
        • foreign key(外键)
        • check
        • 自增长
      • 索引
        • 索引的代价
        • 索引原理
        • 哪些列上适合使用索引
        • 主键索引
        • 唯一索引(UNIQUE)
        • 普通索引(INDEX)
        • 全文索引(FULLTEXT)[适用于MylSAM]
        • 索引使用
      • 事务
        • 引出事务
        • 基本操作
        • 事务细节
        • 事务隔离级别
        • 查看和设置事务隔离级别
        • 全局修改事务隔离级别
        • 事务的acid特性
    • 数据库CRUD语句
      • 单表查询
        • 表达式与as语句
        • 运算符
        • 排序
        • 使用group by子句对列进行分组
        • 使用having子句对分组后的结果进行过滤
        • 关键字
          • DISTINCT 去重
        • 函数
          • 统计函数
            • 统计 - count
            • 求和函数 - sum
            • 平均值 - avg
            • 最大值 max
            • 最小值 min
          • 字符串函数
          • 数学函数
          • 时间日期函数
          • 加密和系统函数
          • 流程控制函数
      • 单表查询加强
        • 分页查询
      • 多表查询
        • 笛卡尔集
        • 自连接
      • 子查询
        • 单行子查询
        • 多行子查询
          • 多行子查询中使用all与any操作符
        • 多列子查询
        • 子查询临时表
      • 表复制与去重
      • 合并查询union,union all
      • 外连接
  • 存储引擎
    • 基本介绍
    • 主要的存储引擎/表类型特点
    • 如何选择表的存储引擎
  • 视图
    • 基础概念
    • 视图的基本使用
    • 视图中可以在使用视图
    • 视图最佳实践
  • 用户管理
    • 创建、删除用户
    • 用户修改密码
    • mysql中的权限
    • 给用户授权
    • 回收用户权限
    • 权限生效指令
  • mysql命令
    • 备份数据库
    • 备份库的表
    • 恢复数据库

MySQL的三层结构

image-20241203223227568

SQL语句分类

DDL:数据定义语句[create表,库…]
DML:数据操作语句[增加insert,修改update,删除delete]
DQL:数据查询语句[select]

image-20241205232118415image-20241205232538782image-20241205232307272

DCL:数据控制语句[管理数据库:比如用户权限grant revoke]

TCL:不是王牌电视。是事务控制语言包括:事务提交:commit;事务回滚:rollback;

sql语句

image-20241203230922869

数据库操作

创建数据库

在创建数据库,表的时候,为了规避关键字,可以使用反引号解决
CREATE DATABASE `CREATE`

#创建一个名称为hsp_db01的数据库
CREATE DATABASE hsp_db01;

#创建一个utf8字符集的hsp_db02数据库
CREATE DATABASE hsp_db02 CHARACTER SET utf8;

#创建一个使用utf8字符集,并带校对规则的hsp_db03数据库
CREATE DATABASE hsp_db03 CHARACTER SET utf8 COLLATE utf8_bin;

查看、删除数据库

#显示数据库
SHOW DATABASES;

#显示数据库创建语句
SHOW CREATE DATABASE db_name;

#数据库删除语句
DROP DATABASE [IF EXISTS] db_name;

表操作

创建表

image-20241204200249685

image-20241204201916348

image-20241204200856914image-20241204201200798

mysql常用数据类型(列类型)

枚举类型

image-20241208172734863

字符串使用细节

char(4) //这个4表示字符数(最大255),不是字节数,不管是中文还是字母都
是放四个,按字符计算.

varchar(4) //这个4表示字符数,不管是字母还是中文都以定义好的表的编码
来存放数据
不管是中文还是英文字母,都是最多存放4个,是按照字符来存放的,

char(4)和 varchar(4)这个4表示的是字符,而不是字节,不区分字符是汉字还是字母

什么时候使用char,什么时候使用varchar

1.如果数据是定长,推荐使用char,比如md5的密码,邮编,手机号,身份证号码等.char(32)
2.如果一个字段的长度是不确定,我们使用varchar,比如留言,文章
查询速度:char > varchar

在存放文本时,也可以使用Text数据类型.可以将TEXT列视为 VARCHAR列,注意Tet不能有默认值.大小0-216字节如果希望存放更多字,可以选择 MEDIUMTEXT 0-2^24或者LONGTEXT 0~2^32

image-20241204205707294

查询表、插入值

# 查询所有从t1表条件是name=tom
SELECT * FROM t1 WHERE NAME = 'tom';

# 给t3表添加一个值
INSERT INTO t3 VALUES(127);

# 显示表的结构和约束
desc 表名

创建表练习

创建一个员工表emp
image-20241204224836677

image-20241204230431429

修改表

image-20241205192715062

image-20241205195932498

image-20241205200432852

image-20241205200658076

mysql约束

image-20241208151625004
primary key(主键)

primary key不能重复而且不能为null

一张表最多只能有一个主键,但可以是复合主键(比如id+name)

image-20241208152729172

复合主键

id+name同时相同才不允许添加

image-20241208154051430

image-20241208154519623

not null(非空)
image-20241208155344519
unique(唯一)
image-20241208155416122
foreign key(外键)

1.外键指向的表的字段,要求是primary key或者是 unique
2.表的类型是innodb,这样的表才支持外键
3.外键字段的类型要和主键字段的类型一致(长度可以不同)
4.外键字段的值,必须在主键字段中出现过,或者为null[前提是外键字段允许为null]
5.一旦建立主外键的关系,数据不能随意删除了

image-20241208160543551

外键示意图

image-20241208161541550
check

MySQL从8.0.16版本开始支持CHECK约束,并使其生效。在MySQL 8.0.16之前的版本中,虽然允许使用CHECK (expr)形式的检查约束语法,但实际上解析之后会忽略该子句,CHECK约束并不会对数据进行检查,而是仅仅作为注释存在。

CHECK约束是一种完整性约束,用于限制表中数据的取值范围,可以确保插入或更新的数据满足特定的条件。它有助于维护数据的完整性,防止非法数据的插入或更新,并且通过在数据库层面进行数据验证,可以减少应用程序中的错误处理逻辑,提高性能。

在MySQL中,CHECK约束可以分为基于列的CHECK约束和基于表的CHECK约束。基于列的CHECK约束应用于单个列,限制该列的取值范围;而基于表的CHECK约束则应用于整个表,可以涉及多个列的组合条件。

因此,如果需要使用CHECK约束来限制MySQL表中数据的取值范围,请确保使用的MySQL版本为8.0.16或更高版本。

image-20241208164716335

商店表设计

image-20241208184813397

CREATE DATABASE shop_db;


-- 商品goods
CREATE TABLE goods (
  goods_id INT PRIMARY KEY,
  goods_name VARCHAR (64) NOT NULL DEFAULT '',
  unitprice DECIMAL (10, 2) NOT NULL DEFAULT 0 CHECK (unitprice >= 1.0 AND unitprice <= 9999.99),
  category INT NOT NULL DEFAULT 0,
  provider VARCHAR (64) NOT NULL DEFAULT ''
);

-- 客户customer
CREATE TABLE customer (
  -- 客户
  customer_id VARCHAR (8) PRIMARY KEY,
  -- 姓名
  `name` VARCHAR (64) NOT NULL DEFAULT '',
  -- 地址
  address VARCHAR (64) NOT NULL DEFAULT '',
  -- 邮箱
  email VARCHAR (64) UNIQUE NOT NULL,
  -- 性别
  sex ENUM ('男', '女') NOT NULL,
  -- 身份证
  card_Id CHAR(18)
); 

-- 购买
CREATE TABLE purchase (
  -- 订单号
  order_id INT UNSIGNED PRIMARY KEY,
  -- 客户号
  customer_id CHAR(8) NOT NULL DEFAULT '',
  -- 商品号
  goods_id INT NOT NULL DEFAULT 0,
  -- 购买数量
  nums INT NOT NULL DEFAULT 0,
  FOREIGN KEY (customer_id) REFERENCES customer(customer_id),
  FOREIGN KEY (goods_id) REFERENCES goods(goods_id)
);
自增长

1.一般来说自增长是和primary key配合使用的
2.自增长也可以单独使用[但是需要配合一个unique]
3.自增长修饰的字段为整数型的(虽然小数也可以但是非常非常少这样使用)
4.自增长默认从1开始,你也可以通过如下命令修改alter table 表名 auto increment = xxx;
5.如果你添加数据时,给自增长字段(列)指定的有值,则以指定的值为准,如果指定了自增长,一般来说,就按照自增长的规则来添加数据

image-20241208185210637

索引

说起提高数据库性能,索引是最物美价廉的东西了。不用加内存,不用改程序,不用调sql,查询速度就可能提高百倍干倍。

索引的代价

1.磁盘占用
2.对dml(update delete insert)语句的效率影响(会对索引进行维护,对速度有影响)

索引原理

没有索引为什么会慢?因为全表扫描
使用索引为什么会快?形成一个索引的数据结构,比如二叉树

image-20241208212649767image-20241208213106577

哪些列上适合使用索引

1.较频繁的作为查询条件字段应该创建索引
select from emp where empno 1
2.唯一性太差的字段不适合单独创建索引,即使频繁作为查询条件
select from emp where sex = ‘男’
3.更新非常频繁的字段不适合创建索引
select from emp where logincount = 1
4.不会出现在WHERE子句中字段不该创建索引

image-20241208204331392

image-20241208204354894

主键索引

主键自动的为主索引(类型Primary key)

image-20241208222627860
唯一索引(UNIQUE)

如果某列的值,是不会重复的,则优先考虑使用unique索引,否则使用普通索引

image-20241208222841806
普通索引(INDEX)

image-20241208222418549

全文索引(FULLTEXT)[适用于MylSAM]

一般开发,不使用mysql自带的全文索引,而是使用:全文搜索Solr ElasticSearch (ES)

索引使用

查询表是否有索引

image-20241208223709359

添加、删除索引

image-20241208221000352

事务

什么是事务
事务用于保证数据的一致性,它由一组相关的dml语句组成,该组的dl语句要么全部成功,要么全部失败。如:转账就要用事务来处理,用以保证数据的一致性。

事务和锁
当执行事务操作时(dml语句),mysql:会在表上加锁,防止其它用户改表的数据.这对用户来讲是非常重要的

引出事务

image-20241208231951058

基本操作

回退事务
在介绍回退事务前,先介绍一下保存点(savepoint).保存点是事务中的点.用于取消部分事务,当结束事务时(commit),会自动的删除该事务所定义的所有保存点.当执行回退事务时,通过指定保存点可以回退到指定的点。

提交事务
使用commiti语句可以提交事务.当执行了commiti语句子后,会确认事务的变化、结束事务、删除保存点、释放锁,数据生效。当使用commit语句结束事务子后,其它会话【其他连接】将可以查看到事务变化后的新数据【所有数据就正式生效】

image-20241208230328519

image-20241208234026626
事务细节

1.如果不开始事务,默认情况下,dml操作是自动提交的,不能回滚
2.如果开始一个事务,你没有创建保存点.你可以执行rollback,默认就是回退到你事务开始的状态
3.你也可以在这个事务中(还没有提交时),创建多个保存点.
比如:
savepoint aaa;
执行dml
savepoint bbb;
4.你可以在事务没有提交前,选择回退到哪个保存点
5.mysql的事务机制需要lnnoDB的存储引擎才可以使用,MyISAM不支持
6.开始一个事务start transaction 或者 SET autocommit=off;

image-20241209200123520

事务隔离级别

事务隔离级别介绍
1.多个连接开启各自事务操作数据库中数据时,数据库系统要负责隔离操作,以保证各个连接在获取数据时的准确性。(通俗解释)
2.如果不考虑隔离性,可能会引发如下问题:
脏读
不可重复读
幻读

image-20241209212550147

image-20241209204252031

查看和设置事务隔离级别

image-20241209215138361

全局修改事务隔离级别

image-20241209215850240

事务的acid特性

image-20241209220318484

数据库CRUD语句

image-20241205201229719 image-20241205201520428 image-20241205205823371 image-20241205211218034

1.如果不使用where子句,将删除表中所有数据。
2.Delete语句不能删除某一列的值(可使用update设为null或者")
3.使用delete语句仅删除记录,不删除表本身。如要删除表,使用drop table语句。drop table 表名;

单表查询

image-20241205214201147
表达式与as语句
image-20241205215906764
运算符
image-20241205222156523
排序
image-20241205225856390
使用group by子句对列进行分组
image-20241206200442246
使用having子句对分组后的结果进行过滤
image-20241206200511742
关键字
DISTINCT 去重
image-20241207172738557
函数
统计函数
统计 - count
image-20241205231601646

count(*)和count(列)的区别
*解释:count(*)返回满足条件的记录的行数
count(列):统计满足条件的某列有多少个,但是会排除为null的情况

求和函数 - sum
image-20241206192706341

■统计一个班级数学总成绩?

■统计一个班级语文、英语、数学各科的总成绩

■统计一个班级语文、英语、数学的成绩总和

■统计一个班级语文成绩平均分

注意:sum仅对数值起作用,否则没有意义。

注意:对多列求和,“,”号不能少。

平均值 - avg
image-20241206194953274
最大值 max
image-20241206195346459
最小值 min

image-20241206195938395

字符串函数

image-20241206204514682

image-20241206221329507

数学函数

image-20241206222558429

rand()返回一个随机浮点值y,范围在0到1之间(即,其范围为0≤V≤1.0)。若已指定一个整数参数W,则它被用作种子值,用来产生重复序列。

1.如果使用rand()每次返回不同的随机数,在0≤v≤1.0

2.如果使用 rand(seed)返回随机数,范围0≤v≤1.0,如果seed不变,该随机数也不变了

时间日期函数

image-20241206225052346

image-20241206234154200

image-20241206233204753

image-20241206233835114

加密和系统函数

image-20241207131441917

流程控制函数

image-20241207135008211

image-20241207161008590

单表查询加强

image-20241207162525588

image-20241207162714260

image-20241207162939639

image-20241207163641412

分页查询

image-20241207164210291

image-20241207164825833

image-20241207165006573

多表查询

笛卡尔集
image-20241207185339200

image-20241207185925493

自连接

自连接是指在同一张表的连接查询

image-20241207192023840

子查询

单行子查询
image-20241207195131998
多行子查询

image-20241207200304380
多行子查询中使用all与any操作符

image-20241207213653911

image-20241207214824009

多列子查询

请思考如何查询与allen的部门和岗位完全相同的所有雇员(并且不含allen本人)

(字段1,字段2…)=(select 字段1,字段2 from…)

image-20241207220547636

image-20241207220630854 image-20241207221354846
子查询临时表

image-20241207201414288

image-20241207202021937

image-20241207222837575

image-20241207222852425

image-20241207223610673

查询每个部门的信息(包括:部门名,编号,地址)和人员数量

image-20241207224548449

表复制与去重

image-20241208000301623

image-20241208125008064

image-20241208125608909

合并查询union,union all

image-20241208135844428 image-20241208140007638

外连接

1.左外连接(如果左侧的表完全显示我们就说是左外连接)

image-20241208144421837 image-20241208144515984

2.右外连接(如果右侧的表完全显示我们就说是右外连接)

image-20241208150642089

存储引擎

基本介绍

InnoDB存储引擎:支持事务、行级锁定和外键
MRG_MYISAM存储引擎:收集相同的MyISAM表
MEMORY存储引擎:基于哈希的,存储在内存中,对临时表有用
BLACKHOLE存储引擎:写入到这的数据会被销毁
MYISAM存储引擎:不支持事务
CSV存储引擎:CSV存储引擎
ARCHIME存储引擎:存档类型的存储引擎

image-20241209221725006

显示当前数据库支持的存储引擎

show engines;

主要的存储引擎/表类型特点

1.MyISAM不支持事务、也不支持外键,但其访问速度快,对事务完整性没有要求

2.InnoDB存储引擎提供了具有提交、回滚和崩溃恢复能力的事务安全。但是比起
MyISAM存储引擎,InnoDB写的处理效率差一些并且会占用更多的磁盘空间以保留
数据和索引。

3.MEMORY?存储引擎使用存在内存中的内容来创建表。每个MEMORY表只实际对应
一个磁盘文件。MEMORY类型的表访问非常得快,因为它的数据是放在内存中的,
并且默认使用HASH索引。但是一旦服务关闭,表中的数据就会丢失掉,表的结构还
在。

image-20241210114901372

如何选择表的存储引擎

image-20241210174314807

修改存储引擎

-- 指令修改存储引擎
ALTER TABLE `t29` ENGINE = INNODB;

视图

看一个需求

image-20241210175632204

基础概念

1.视图是一个虚拟表,其内容由查询定义。同真实的表一样,视图包含列,其数据来自对应的真实表(基表)
2.视图和基表关系的示意图

对视图的总结

1.视图是根据基表来创建的视图是虚拟的表
2.视图也有列,数据来自基表
3.通过视图可以修改基表的数据
4.基表的改变,也会影响到视图的数据

视图的基本使用

  1. create view 视图名 as select 语句

创建视图

  1. alter view 视图名 as select 语句

修改视图结构

  1. SHOW CREATE VIEW 视图名

查看创建视图的指令

  1. drop view 视图名1,视图名2

删除视图

image-20241210182009122

视图中可以在使用视图

image-20241210183924455

视图最佳实践

image-20241210184212872

image-20241210185722997

image-20241210190300840

用户管理

原因:当我们做项目开发时,可以根据不同的开发人员,赋给他相应的mysql操作权限所以,mysql数据库管理人员(root),根据需要创建不同的用户,赋给相应的权限,供人员使用

不同的数据库用户,登录到DBMS后,根据相应的权限,可以操作的数据库和数据对象(表,视图,触发器)都不一样

image-20241210191006059

user表的重要字段说明:

image-20241210191530442

创建、删除用户

1.在创建用户的时候,如果不指定Host,则为%,%表示表示所有IP都有连接权限
create user xxx;
2.你也可以这样指定
create user’xx’@‘192.168.1.%‘表示Xxx用户在192.168.1.*的ip可以登
录mysql
3.在删除用户的时候,如果host不是%,需要明确指定"用户’@‘host值
DROP USER jack; – 默认就是DROP USER ‘jack’@’%’

image-20241210214009084

用户修改密码

image-20241210220004429

mysql中的权限

image-20241210221305911

给用户授权

image-20241210222123811

image-20241210223746692

回收用户权限

image-20241210222622250 image-20241210224237721

权限生效指令

FLUSH PRIVILEGES;

mysql命令

备份数据库

要在Dos下执行mysqldump指令其实在mysql安装目录\bin

mysqldump -u 用户名 -p -B 数据库1 数据库2 数据库n > d:\\文件名.sql

备份库的表

mysqldump -u 用户名 -p 数据库 表1 表2 表n > d:\\文件名.sql

恢复数据库

进入Mysql命令行再执行

source 文件名.sql

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

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

相关文章

Java版企业电子招标采购系统源业码Spring Cloud + Spring Boot +二次开发+ MybatisPlus + Redis

功能描述 1、门户管理&#xff1a;所有用户可在门户页面查看所有的公告信息及相关的通知信息。主要板块包含&#xff1a;招标公告、非招标公告、系统通知、政策法规。 2、立项管理&#xff1a;企业用户可对需要采购的项目进行立项申请&#xff0c;并提交审批&#xff0c;查看所…

eclipse启动的时候,之前一切很正常,但突然报Reason: Failed to determine a suitable driver class的解决

1、之前项目都是启动正常的&#xff0c;然后运行以后发现启动不了了&#xff0c;还会报错&#xff1a; 2、这个Reason: Failed to determine a suitable driver class&#xff0c;说是没有合适的驱动class spring:datasource:url: jdbc:sqlserver://192.168.1.101:1433;databa…

PostGIS分区表学习相关

在Postgresql中对空间数据进行表分区的实践_postgresql空间数据-CSDN博客文章浏览阅读1.4k次&#xff0c;点赞26次&#xff0c;收藏21次。Postgresql的分区功能允许将一个大表按照特定的规则拆分成多个小的分区表。这样做的好处在于&#xff0c;在查询数据时&#xff0c;可以只…

【sgUploadList】自定义组件:基于elementUI的el-upload封装的上传列表组件,适用于上传附件时

sgUploadList源码 <template><div :class"$options.name"><ul class"files"><li v-for"(a, i) in files" :key"i"><sgFileLink :data"a" remove"remove(a, i)" clearable /></…

C#核心(16)万物之父和装箱拆箱

前言 西方说人类的万物之父是亚当&#xff0c;中国说人类的万物之母是女娲&#xff0c;那么c#中有没有一个万物之父呢&#xff1f; 有&#xff0c;我们今天就来浅浅聊一下。 在C#和许多其他面向对象编程语言中&#xff0c;“万物之父”指的是Object类。这个类的历史和重要性…

网页核心页面设计(第7章)

一、生态家居网页 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8" /><meta http-equiv"X-UA-Compatible" content"IEedge" /><meta name"viewport" content"widthdevi…

IoTDB 删除数据后文件大小不减反增

现象 时序数据库 IoTDB 删除大量数据后&#xff0c;为什么 data 空间不减反增&#xff1f; 原因 IoTDB 的存储引擎采用 LSM&#xff08;Log-Structured Merge&#xff09;架构。在执行删除操作时&#xff0c;系统会生成 .mod 文件来标记删除的数据。这些删除标记会在后续的合…

WPF Prism 01-BootstrapperShell

Prism介绍 Prism 是一个用于在 WPF、.NET MAUI、Uno 平台和 Xamarin Forms 中构建松耦合、可维护和可测试的 XAML 应用程序的框架。每个平台都有单独的发布版本&#xff0c;并且这些版本将在独立的开发时间线上进行开发。Prism 提供了一组设计模式的实现&#xff0c;这些模式有…

html中,实现通过拖拽调整图像尺寸

<!DOCTYPE html> <html lang"en"> <head> <meta charset"UTF-8"> <meta name"viewport" content"widthdevice-width, initial-scale1.0"> <title>html中拖拽修改图像尺寸</title> <styl…

Composer在安装的过程中经常找不到刚更新的包

明明有v2.1.0版本&#xff0c;安装就是找不到这个版本的包。 1. Composer 官方网址&#xff1a;https://getcomposer.org 中文网站&#xff1a;https://www.phpcomposer.com 官方文档&#xff1a;https://docs.phpcomposer.com 2. Packagist Packagist 是 Composer的组件仓库…

项目实例_FashionMNIST_CNN

前言 提醒&#xff1a; 文章内容为方便作者自己后日复习与查阅而进行的书写与发布&#xff0c;其中引用内容都会使用链接表明出处&#xff08;如有侵权问题&#xff0c;请及时联系&#xff09;。 其中内容多为一次书写&#xff0c;缺少检查与订正&#xff0c;如有问题或其他拓展…

使用数据库同步中间件DBSyncer实现不同数据库的数据同步

点击上方蓝字关注我 有去O(ORACLE数据库)、信创、国产化数据库等项目实践的同学应该都遇到过不同数据库之前进行数据迁移的问题&#xff0c;虽然有各种工具可以实现&#xff0c;但是有些工具的部署、使用比较复杂&#xff0c;也有些工具迁移数据效率很低。本文将介绍一款开源且…

SQL汇总数据:聚集函数

我们经常需要汇总数据而无需实际检索出这些数据&#xff0c;为此SQL提供了专门的函数。使用这些函数&#xff0c;SQL查询能够高效地检索数据&#xff0c;以便进行分析和报表生成。这类检索的例子包括&#xff1a; 确定表中行数&#xff08;或者满足某个条件或包含某个特定值的…

HTML颜色-HTML脚本

HTML脚本 js使得HTML页面具有更强的动态和交互性 HTML<script>标签 标签用于定义客户端脚本&#xff0c;比如javascript 可包含脚本语句&#xff0c;也可以通过src属性指向外部的脚本文件 JavaScript最常用于图片操作&#xff0c;表单验证以及动态的内容更新 HTML<n…

ASP.NET Core8.0学习笔记(二十五)——EF Core Include导航数据加载之预加载与过滤

一、导航属性数据加载 1.在EF Core中可以使用导航属性来加载相关实体。 2.加载实体的三种方式&#xff1a; (1)预先加载&#xff1a;直接在查询主体时就把对应的依赖实体查出来&#xff08;作为初始查询的一部分&#xff09; (2)显式加载&#xff1a;使用代码指示稍后显式的从…

【工具变量】上市公司企业过度负债数据(2000-2022年)

一、计算方式&#xff1a;参考C刊《投资研究》汪昌云&#xff08;2022&#xff09;老师的研究&#xff0c;将实际负债率与 Tobit 回归得到的目标负债率之差认定为过度负债率&#xff0c;该种方式认为目标负债率的驱动因素包括公司特征与行业因素&#xff0c;较为全面&#xff0…

分布式数据库中间件-Sharding-JDBC

文章目录 Sharding-JDBCSharding-JDBC介绍Sharding-JDBC的作用什么是分库分表分库分表的方式分库分表带来的问题事务一致性问题跨节点关联查询跨节点分页、排序函数主键重复 Sharding-JDBC 入门&#xff08;水平分表&#xff09;需求说明环境搭建编写代码流程分析其他配置方式概…

FPGA 16 ,Verilog中的位宽:深入理解与应用

目录 前言 一. 位宽的基本概念 二. 位宽的定义方法 1. 使用向量变量定义位宽 ① 向量类型及位宽指定 ② 位宽范围及位索引含义 ③ 存储数据与字节数据 2. 使用常量参数定义位宽 3. 使用宏定义位宽 4. 使用[:][-:]操作符定义位宽 1. 详细解释 : 操作符 -: 操作符 …

HTML:表格重点

用表格就用table caption为该表上部信息&#xff0c;用来说明表的作用 thead为表头主要信息&#xff0c;效果加粗 tbody为表格中的主体内容 tr是 table row 表格的行 td是table data th是table heading表格标题 &#xff0c;一般表格第一行的数据都是table heading

hbuilder 本地插件配置

插件存放路径&#xff0c;项目根目录nativeplugins下&#xff0c;没有就新建。 aar文件存放路径\nativeplugins\pda-module\android package.json存放路径\nativeplugins\module\ 配置package.json文件 { "name": "本地插件", "id": &quo…