随笔分类 - SQL SERVER
摘要:将框架从.NET6升级到8,顺便将各种依赖包也升级,容器化部署到测试环境后,SQL Server连接不了了: [2024-05-13 13:48:10 ERR] [Microsoft.EntityFrameworkCore.Database.Connection] An error occurred
阅读全文
摘要:SSL Provider, error: 31 - Encryption(ssl/tls) handshake failed 在测试环境部署服务后,调用API会抛出以下异常: Microsoft.Data.SqlClient.SqlException (0x80131904): A connecti
阅读全文
摘要:在生产环境中,通常有DBA同事对数据库进行监控,在发现如慢查询等问题时反馈给开发团队进行解决。 .NET平台提供了诊断机制,借助该机制可以实现EFCore记录慢查询日志功能,这样开发团队就可以通过日志告警发现慢查询问题而无需被动依赖DBA同事的反馈。 记录慢查询日志 基于.NET6创建API项目,安
阅读全文
摘要:变量 示例如下: T-SQL提供了使用SELECT语句来给变量赋值的扩展功能: 也可以使用子查询来给变量赋值: 注意,上述SET语句中的子查询必须只能返回标量,否则会报错,示例如下: 执行报错: 子查询返回的值不止一个。当子查询跟随在 =、!=、<、<=、>、>= 之后,或子查询用作表达式时,这种情
阅读全文
摘要:在前面的文章中对T-SQL的查询做了基本总结,接下来我们看下SQL中的另外一个常用操作——数据的修改。 INSERT INSERT 向数据表中插入数据的基本语句,句式: T-SQL对VALUES进行了增强,可以一条语句插入多条数据: 示例如下: BULK INSERT 该语句用于将文件中的数据插入到
阅读全文
摘要:三个运算符 T-SQL支持三个集合运算符:UNION、INTERSECT、EXCEPT。 集合运算符查询的一般形式如下: ORDER BY 在逻辑查询处理方面,集合运算符应用于两个查询结果集,且外部的ORDER BY子句(如果有的话)应用于集合运算所得到的结果集。 每个独立的查询可以使用除了ORDE
阅读全文
摘要:子查询 在嵌套查询中,最外面查询结果集返回给调用方,称为外部查询。嵌套在外部查询内的查询称为子查询,子查询的结果集供外部查询使用。 根据是否依赖外部查询,可将子查询分为自包含子查询和相关子查询。自包含子查询不依赖外部查询,相关子查询则依赖外部查询。 子查询结果是在运行时计算的,查询结果会跟随查询表的
阅读全文
摘要:在上篇博文中介绍了T-SQL查询的基础知识,本篇主要介绍稍微复杂的查询形式。 表运算符 表运算符的作用是把为其提供的表作为输入,经过逻辑查询处理,返回一个表结果。SQL Server支持四个表运算符:JOIN、APPLY、PIVOT、UNPIVOT,其中JOIN是标准SQL中的运算符,APPLY、P
阅读全文
摘要:名词解释 SQL: Structured Query Language,结构化查询语言,是一种在关系型数据库中用于管理数据的标准语言。SQL是一种声明式编程语言,即只需表明需要什么而无需关注实现细节(C#中的LINQ也是如此)。 SQL方言:在SQL标准的基础上延伸的其它语言,如SQL Server
阅读全文
摘要:SQL Server中的锁分为两类: 共享锁 排它锁 锁的兼容性:事务间锁的相互影响称为锁的兼容性。 SQL Server中可以锁定的资源包括:RID或键(行)、页、对象(如表)、数据库等等。 在试图修改数据(增删改)时,事务会请求数据资源的一个排它锁而不考虑事务的隔离级别。排它锁直到事务结束才会解
阅读全文
摘要:今天得空,就在Ubuntu17.04上安装了SQL SERVER 2017体验下,总体来说还是不错的。 在Ubuntu上安装SQL SERVER 2017还是比较方便的,只需几条命令即可: 目前,在安装SQL SERVER 2017有7个版本可供选择,我选了免费的EXPRESS版。执行完上述命令,会
阅读全文