数据库
文章平均质量分 85
各种数据库内容
软泡芙
1.01^365=37.78343433289,0.99^365= 0.02551796445229,每天的一点改变,变好或是变坏都存在蝴蝶效应。
展开
-
【数据库】范式
在数据库设计中,范式(Normal Form,简称NF)是指设计关系数据库时所需满足的规范,这些规范旨在减少数据冗余、提升数据一致性,并避免在插入、删除和更新数据时发生异常。关系数据库中有多种范式,从低到高依次为第一范式(1NF)、第二范式(2NF)、第三范式(3NF)、巴斯-科德范式(BCNF)、第四范式(4NF)和第五范式(5NF,又称完美范式)。原创 2024-07-04 10:50:57 · 1705 阅读 · 4 评论 -
【EF Core】两种使用模式(Code First、Database First)
Entity Framework Core (EF Core) 是 Microsoft 提供的一个对象关系映射器 (ORM),它允许开发者使用 .NET 对象来处理数据库。EF Core 提供了几种使用模式,帮助开发者根据项目需求高效地管理数据库和对象之间的关系。以下是 EF Core 的主要使用模式:原创 2024-06-24 12:05:49 · 2018 阅读 · 2 评论 -
【数据库】世界上使用最多的引擎SqlLite
SQLite 是一个进程内库,它实现了一个独立的、**无服务器的**、零配置的事务性 SQL 数据库引擎。 SQLite的代码属于公共领域,因此对 用于任何目的,商业或私人目的。 SQLite是世界上部署最广泛的数据库 应用程序比我们能做的要多 计数,包括几个备受瞩目的项目。原创 2024-06-17 15:12:13 · 1830 阅读 · 2 评论 -
【数据库】255对比256的优势
255=2^8-1 ,很多时候用到255却步凑整到256,这是为啥呢?比如下面的两种情况:RabbitMQ的routing_key 和 binding_key 的最大长度255 字节。Navicat添加字段的时候默认给长度限制255原创 2024-06-07 08:12:34 · 1955 阅读 · 0 评论 -
【数据库】锁表原因及处理
数据库锁表是指在数据库中,为了保证数据的一致性和完整性,可能会对数据进行加锁,以避免并发操作引起的数据冲突。如果锁定的范围过大或时间过长,可能会导致数据库表被锁定,从而影响系统性能。原创 2024-04-03 11:49:38 · 4716 阅读 · 0 评论 -
【NoSQL】MongoDB
MongoDB是一个基于分布式文件存储的数据库。由C++语言编写。旨在为WEB应用提供可扩展的高性能数据存储解决方案。MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。它支持的数据结构非常松散,是类似json的bson格式,因此可以存储比较复杂的数据类型。Mongo最大的特点是它支持的查询语言非常强大,其语法有点类似于面向对象的查询语言,几乎可以实现类似关系数据库单表查询的绝大部分功能,而且还支持对数据建立索引。原创 2024-03-29 09:49:30 · 2057 阅读 · 2 评论 -
【高并发】故障转移
在计算机术语中,故障转移(英语:failover),即当活动的服务或应用意外终止时,快速启用冗余或备用的服务器、系统、硬件或者网络接替它们工作。 故障转移(failover)与交换转移操作基本相同,只是故障转移通常是自动完成的,没有警告提醒手动完成,而交换转移需要手动进行。原创 2023-12-01 10:21:26 · 1191 阅读 · 0 评论 -
【SQL Server】表死锁/解锁和sql语句分析
【SQL Server】表死锁/解锁和sql语句分析原创 2023-10-07 14:32:49 · 6122 阅读 · 0 评论 -
【SQL】sqladvisor指南
SQLAdvisor是由美团点评公司技术工程部DBA团队(北京)开发维护的一个分析SQL给出索引优化建议的SQL优化工具。它基于MySQL原生态词法解析,结合分析SQL中的where条件、聚合条件、多表Join关系 给出索引优化建议。**主要功能:输出SQL索引优化建议**原创 2023-06-12 16:07:14 · 1195 阅读 · 2 评论 -
【MySQL】Mycat指南
mycat是Java语言开发的目前比较主流的数据库中间件之一,是mycat团队在阿里开源的 Cobar 产品基础上而研发的,也一直在维护。mycat实现了 MySQL 协议的服务器,前端用户可以把它看作是一个数据库代理,用 MySQL 客户端工具和命令行访问,而其后端可以用 MySQL 原生协议与多个 MySQL 服务器通信,也可以用 JDBC 协议与大多数主流数据库服务器通信。mycat不单只可以做MySQL的代理,它的后端可以支持MySQL、SQL Server、Oracle、DB2、Postgre原创 2023-06-09 09:15:59 · 4913 阅读 · 0 评论 -
【数据仓库】即席查询
即席查询(Ad Hoc)是用户根据自己的需求,灵活的选择查询条件,系统能够根据用户的选择生成相应的统计报表。即席查询与普通应用查询最大的不同是普通的应用查询是定制开发的,而即席查询是由用户自定义查询条件的。原创 2023-05-30 09:14:49 · 1900 阅读 · 0 评论 -
【C#】程序和sql速度对比
【C#】程序和sql速度对比原创 2023-04-12 09:33:49 · 706 阅读 · 0 评论 -
【SQL】注入与预防
SQL是操作数据库数据的结构化查询语言,网页的应用数据和后台数据库中的数据进行交互时会采用SQL。而SQL注入是将Web页面的原URL、表单域或数据包输入的参数,修改拼接成SQL语句,传递给Web服务器,进而传给数据库服务器以执行数据库命令。如Web应用程序的开发人员对用户所输入的数据或cookie等内容不进行过滤或验证(即存在注入点)就直接传输给数据库,就可能导致拼接的SQL被执行,获取对数据库的信息以及提权,发生SQL注入攻击原创 2023-02-01 09:20:43 · 434 阅读 · 0 评论 -
【翻译】EF Core 3.1.x, 5.x & 6.x Second Level Cache Interceptor
第二级缓存是缓存查询。EF命令请求的结果将存储在缓存中,因此相同的EF命令请求将从缓存中检索数据,而不是再次去数据库执行它们。翻译 2022-08-05 11:25:50 · 986 阅读 · 0 评论 -
【SQL】按某个关联列用一张表的数据更新另一张表
SQL更新表——用一张表的部分字段数据更新另一张表原创 2022-07-29 16:46:47 · 4442 阅读 · 2 评论 -
【数据库】CTE(Common Table Expression(公共表表达式))
数据库CTE指的是公共表表达式(Common Table Expression).可以把它认为是在单个select,insert,update, delete 或者 create view 语句中定义的临时结果集。CTE类似派生表,但它不以对象的形式存储在数据库中,只在当前查询语句的执行期间有效。而且CTE可以在同一个语句中被多次引用。CTE可以用于:1. 建立递归查询。常见的场景有组织架构图、BOM等。具体用法请参考联机丛书。2. 当不需要常规视图时,代替视图,提高可读性。3. 允许在派生列上转载 2022-07-25 14:32:18 · 1884 阅读 · 0 评论 -
【MySQL】游标「Cursor」
虽然我们也可以通过筛选条件 WHERE 和 HAVING,或者是限定返回记录的关键字 LIMIT 返回一条记录,但是,却无法在结果集中像指针一样,向前定位一条记录、向后定位一条记录,或者是 随意定位到某一 条记录 ,并对记录的数据进行处理。这个时候,就可以用到游标。游标,提供了一种灵活的操作方式,让我们能够对结果集中的每一条记录进行定位,并对指向的记录中的数据进行操作的数据结构。游标让 SQL 这种面向集合的语言有了面向过程开发的能力。在 SQL 中,游标是一种临时的数据库对象,可以指向存储在数据库转载 2022-07-22 10:33:39 · 211 阅读 · 0 评论 -
【Excle】生成guid和datetime导入测试数据到数据库
excle创建测试数据导入数据库原创 2022-07-21 10:24:47 · 603 阅读 · 0 评论 -
【SQL Server】#、##、@、@@分别代表什么
SQL.@,@@、#,##含义转载 2022-07-14 13:48:04 · 8855 阅读 · 0 评论 -
【C#】查看ORM生成的SQL语句的几种方式
查看ORM生成的sql的几种方式原创 2022-07-11 17:18:38 · 1114 阅读 · 0 评论 -
【EF Core】C#与各数据库数据类型映射关系
EF Core与C# 数据类型映射关系原创 2022-07-05 16:15:55 · 610 阅读 · 0 评论 -
【SQL】各主流数据库sql拓展语言(T-SQL 、 PL/SQL、PL/PGSQL)
各主流数据库sql拓展语言(T-SQL 、 PL/SQL、PL/PGSQL),各数据库的拓展sql语法不一,但其都是为了是为了在标准sql的基础上使其更具编程性原创 2022-07-05 11:49:56 · 1278 阅读 · 0 评论 -
【数据库】数据表存在大数据字段时的优化
数据表存在大字段时的优化原创 2022-06-30 16:58:48 · 647 阅读 · 0 评论 -
【EF Core】三类事务(SaveChanges、DbContextTransaction、TransactionScope)
本节主要介绍EF Core下的三种事务的用法和各自的使用场景,其中SaveChanges和DBContextTransaction事务与EF版本的基本一致,在该章节中补充一些新的使用场景和配置方式,TransactionScope环境事务与EF 版本的有着本质的区别,它目前不支持分布式数据库事务。 后面章节将继续介绍事务的基础概念、事务的隔离级别和带来的各种问题。.........转载 2022-06-23 11:24:10 · 2045 阅读 · 0 评论 -
【C#】IQueryable和IEnumerable的区别
通过上面两个例子我总结了一下,IQueryable接口与IEnumberable接口的区别: IEnumerable 泛型类在调用自己的SKip 和 Take 等扩展方法之前数据就已经加载在本地内存里了,而IQueryable 是将Skip ,take 这些方法表达式翻译成T-SQL语句之后再向SQL服务器发送命令,它并不是把所有数据都加载到内存里来才进行条件过滤。...............原创 2022-06-21 11:34:40 · 443 阅读 · 0 评论 -
【EF】全局查询筛选器
全局查询筛选器是应用于元数据模型(通常为 OnModelCreating)中的实体类型的 LINQ 查询谓词。 查询谓词即通常传递给 LINQ Where 查询运算符的布尔表达式。 EF Core 会自动将此类筛选器应用于涉及这些实体类型的任何 LINQ 查询。 EF Core 还将其应用于使用 Include 或导航属性进行间接引用的实体类型。...转载 2022-06-20 17:21:07 · 452 阅读 · 0 评论 -
【SQL Server】变量前加上 N与其他使用情况解析
加N后代表这个字符串是一个nvarchar类型,在字符串前面加N可以把字符串转换为unicode编码,每个字符串采用双字节的形式存储,这样就第二步在插入是数据前加N:注意两者缺一不可,否则都会导致中文乱码现象的出现!加N后代表这个字符串是一个nvarchar类型,在字符串前面加N可以把字符串转换为unicode编码,每个字符串采用双字节的形式存储,这样就不会初选中文乱码现象完成上一步后不会出现存储中文乱码现象,但是在检索数据时依然会出现中文无法检索的现象。解决方法是在一个常量前加上N变量中含有中文更多转载 2022-06-20 09:31:57 · 2554 阅读 · 0 评论 -
【数据库】MySQL软硬件优化方案
MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,属于 Oracle 旗下产品。MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件之一。..................原创 2022-06-16 11:23:52 · 1312 阅读 · 0 评论 -
【SQL Server】 触发器
orm框架最终也会翻译成sql执行所以一样适用于触发器触发器是一种特殊类型的存储过程,它不同于之前的我们介绍的存储过程。触发器主要是通过事件进行触发被自动调用执行的。而存储过程可以通过存储过程的名称被调用。Ø 什么是触发器触发器对表进行插入、更新、删除的时候会自动执行的特殊存储过程。触发器一般用在check约束更加复杂的约束上面。触发器和普通的存储过程的区别是:触发器是当对某一个表进行操作。诸如:update、insert、delete这些操作的时候,系统会自动调用执行该表上对应的触发器。SQL Se转载 2022-01-13 10:40:41 · 805 阅读 · 0 评论 -
【MSSQL】以一张表的查询结果作为另一张表的插入数据
insert into T_Info_OA_BusinessCardDetail select newid() BusinessCardDetailId,* from T_Info_OA_BusinessCardFolder where BusinessCardFolderId not in ( select BusinessCardFolderId from T_Info_OA_BusinessCardDetail)原创 2022-01-05 15:09:51 · 1409 阅读 · 0 评论 -
【数据库】聚簇索引与非聚簇索引(也叫二级索引)
通俗点讲聚簇索引:将数据存储与索引放到了一块,找到索引也就找到了数据非聚簇索引:将数据存储于索引分开结构,索引结构的叶子节点指向了数据的对应行,myisam通过key_buffer把索引先缓存到内存中,当需要访问数据时(通过索引访问数据),在内存中直接搜索索引,然后通过索引找到磁盘相应数据,这也就是为什么索引不在key buffer命中时,速度慢的原因澄清一个概念:innodb中,在聚簇索引之上创建的索引称之为辅助索引,辅助索引访问数据总是需要二次查找,非聚簇索引都是辅助索引,像复合索引、前缀索引转载 2022-01-04 19:44:22 · 730 阅读 · 0 评论 -
【sql server】临时表和Tempdb
sql server的临时表1、创建方法:方法一:create table TempTableName或select [字段1,字段2,…,] into TempTableName from table方法二:create table tempdb.MyTempTable(Tid int)说明:(1)、临时表其实是放在数据库tempdb里的一个用户表;(2)、TempTableName必须带“#”,“#"可以是一个或者两个,以#(局部)或##(全局)开头的表,这种表在会话期间存在,会话结原创 2021-12-21 15:48:10 · 5532 阅读 · 0 评论 -
【SQL Server】设置默认数据库
同志们每次打开Microsoft SQL Server Management Studio 默认使用的数据库总不是我们最常使用的库,每次都要手动去修改一次才能开始开发,久了就容易不耐烦,下面就教大家设置自己想要的库。原创 2021-12-12 11:16:09 · 2414 阅读 · 0 评论 -
【数据库】数据库表名、字段名的命名长度限制及三大数据库的区别
MySQL优点:体积小、速度快、总体拥有成本低,开放源码,搭配“L(Linux)A(Apache)M(MySQL)P(PHP/Perl/Python)“或“LN(Nginx)MP”就可以建立起一个稳定、免费的网站系统,适合中小型网站。 Oracle优点:使用方便、功能强大,可靠性好、安全性好、可移植性好、适应高吞吐量,适用于各类大、中、小、微机环境。 SqlServer优点:图形化用户界面,丰富的编程接口工具,与Windows NT完全集成,支持分布式的分区视图,适用于Win的Web技术的开发。原创 2021-11-15 19:36:28 · 1423 阅读 · 0 评论 -
【sql server】英文按首字母排序+首字母相同英文排中文后面+数字开头最后+忽略空格影响
按英文按首字母排序+首字母相同英文排中文后面+数字开头最后+忽略空格影响排序的意义多在于需对中文进行排序,例如:通讯录。原创 2021-11-11 18:35:32 · 1782 阅读 · 0 评论 -
【sql server】获取中文首字母函数
把@length=1改成@length=1len(@str)=》效果从输入首字的首字母变成输出全部字的首字母create function [dbo].[GetPY](@str varchar(500)) returns varchar(500) as begin declare @cyc int,@length int,@str1 varchar(100),@charcate varbinary(20) set @cyc=1--从第几个字开始取 set @len原创 2021-11-11 18:28:30 · 1760 阅读 · 0 评论 -
【数据库】索引使用方式
使用索引是提高数据库查询效率的主要方式,下面从索引结构,索引类型,索引操作,命中索引几个方面来介绍索引。一、索引结构mysql5.5以上的默认存储引擎innodb,只显式支持BTree( 事实上从数据结构上来讲是B+树,mysql称之为BTree)索引,对于频繁访问的表,innodb会建立自适应hash索引,即在B树索引基础上建立hash索引,可以显著提高查找效率,用户是无法自己指定的,除此之外还有Hash索引和全文索引(fullText索引)。BTree索引BTree,顾名思义,就是所有的索引节转载 2021-10-29 11:57:23 · 6016 阅读 · 0 评论 -
【MySQL】 数据类型
MySQL 数据类型大致可以分为三类:数值、日期/时间和字符串(字符)类型。数值类型MySQL 支持所有标准 SQL 数值数据类型。这些类型包括严格数值数据类型(INTEGER、SMALLINT、DECIMAL 和 NUMERIC),以及近似数值数据类型(FLOAT、REAL 和 DOUBLE PRECISION)。关键字INT是INTEGER的同义词,关键字DEC是DECIMAL的同义词。BIT数据类型保存位字段值,并且支持 MyISAM、MEMORY、InnoDB 和 BDB表。作为 SQL原创 2021-10-20 17:04:20 · 126 阅读 · 0 评论 -
【知识点】程序性能调优
调优可入手方面包括且不限于:数据库代码设计服务器本文不考虑硬件资源的限制,如:cpu、内存、硬盘、网络带宽等数据库:主要针对3方面:①对sql语句优化,使用列名代替*号,使用索引②对数据库本身进行优化,eg.合理使用冗余字段,对大表进行拆分;③对数据库软件进行优化,合理设置连接数、缓冲区大小等一主多从,读写分离,主库写,从库读分库分表,冷热数据分离,分散数据库存储压力。但分库分表后存在很多多表关联查询,需要解决多个库之间的分布式事务问题,慎重考虑。数据库软件本身优化,比如调整原创 2021-10-13 09:51:45 · 397 阅读 · 0 评论 -
【ORACLE】各种数据类型
当你在数据库中创建数据表的时候,你需要定义表中所有字段的类型。ORACLE有许多种数据类型以满足你的需要。数据类型大约分为:character, number, date, LOB, 和RAW等类型。虽然ORACLE8i也允许你自定义数据类型,但是它们是最基本的数据类型。在下面的文章中你将了解到他们在oracle 中的用法、限制以及允许值。 Character 数据类型 Character 数据类型用来存储字母数字型数据。当你在oracle 中定义一个character 数据时,通常需要制定字原创 2021-09-13 11:49:29 · 3679 阅读 · 0 评论