MSSQL数据库
文章平均质量分 52
qq_18932003
编程爱好者
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
SQLServer存储过程异常处理模版
【代码】SQLServer存储过程异常处理模版。原创 2024-11-26 07:53:57 · 182 阅读 · 0 评论 -
sqlserver LIKE 通配符使用技巧
对于其他的特殊字符:'^', '-', ']' 因为它们本身在包含在 '[]' 中使用,所以需要用另外的方式来转义,于是就引入了 like 中的escape 子句,另外值得注意的是:escape 可以转义所有的特殊字符。SELECT * FROM #TEMP WHERE VAL LIKE '''-%''' --三个' 相当于一个’ 最好使用 "以上4种是最基本的使用方法,但是字符串中出现的特殊字符:'%','[','[]', '_' 时,我们又该如何处理呢?变换方法就是将[/]转换为[//]原创 2024-10-31 20:40:37 · 1484 阅读 · 0 评论 -
sqlserver 游标应用及调优技巧
00.SQL Server 游标运用 - 随笔分类 - 听风吹雨 - 博客园SQL Server GROUP BY中的WITH CUBE、WITH ROLLUP原理测试及GROUPING应用 - 缥缈的尘埃 - 博客园301-DB-SQL Server - 随笔分类 - 缥缈的尘埃 - 博客园SQL Server搭建主从同步实现读写分离 - 缥缈的尘埃 - 博客园SQL Server高级进阶之索引碎片维护 - 缥缈的尘埃 - 博客园SQL Server查询代码在哪个视图、存储过程、函数、触发中使原创 2024-10-06 15:03:15 · 279 阅读 · 0 评论 -
SQL 递归查询(根据指定的节点向上获取所有父节点,向下获取所有子节点)
SELECT T0.* FROM TEMP,CO_Department T0 WHERE TEMP.ParentID=T0.ID --父级ID==子级ID。--------------------02.向下查找所有子节点------------------------------------------------01.向上查找所有父节点-----------------如图:根据"测试组"查找所有父节点。如图:根据"开发组"查找所有子节点。转载 2024-10-03 09:19:31 · 414 阅读 · 0 评论 -
SQL使用行锁
1、ROWLOCK行级锁确保在用户取得被更新的行,到该行进行更新,这段时间内不被其它用户所修改。因而行级锁即可保证数据的一致性,又能提高数据操作的并发性。2、ROWLOCK告诉SQL Server只使用行级锁,ROWLOCK语法可以使用在SELECT,UPDATE和DELETE语句中。3、ROWLOCK指定通常采用页锁或表锁时,采用行锁。在从 SNAPSHOT 隔离级别操作的事务中指定时,除非将 ROWLOCK 与需要锁的其他表提示(例如,UPDLOCK 和 HOLDLOCK)组合,否则不会取得行锁。转载 2024-10-03 08:12:15 · 282 阅读 · 0 评论 -
SqlServer 函数Declare通过传变量查询超慢解决办法
SqlServer 函数Declare通过传变量查询超慢解决办法 原文链接:https://blog.youkuaiyun.com/jinhucvs/article/details/130985280。3,使用OPTION(RECOMPILE),执行计划与传值一致。实际执行时是重新编译了。在使用链接服务器 查询时 where条件中带上变量后查询变得很慢。在语句的最后 附加一句 OPTION(RECOMPILE)sql declare 赋值查询慢。转载 2024-04-07 14:53:16 · 420 阅读 · 0 评论 -
SQL Server 日常维护经典应用
SELECT *,replace(reserved,'KB','')/1024 数据表大小M FROM temp_tableSpaceInfo order by replace(reserved,'KB','')/1024 desc。sum(virtual_memory_reserved_kb)*0.1*10/1024/1024 as vm_Reserved_gb,--保留的内存。,(total_elapsed_time / execution_count)/1000 N'平均时间ms'转载 2023-11-26 22:25:40 · 489 阅读 · 0 评论 -
全局Ajax加载时呈现Loading
说明下: 如果使用 jQuery.ajaxSetup() 去绑定请求前后事件,针对特殊请求使用global:false 则无效。特殊Ajax请求如果不想呈现Loading,只需增加:global:false即可。转载 2023-11-26 20:56:35 · 540 阅读 · 0 评论 -
RowVersion 用法和时间戳作用相同
当事务回滚时,RowVersion字段的值不会回滚,但数据库的RowVersion字段的值会递增,这是因为数据库计数器(Counter)不在事务内,其值只会递增,不会回滚,因此,RowVersion字段的值一旦更新,就不会回滚。RowVersion是一种自增的数据类型,它只用于定义数据表的列类型,其值占用的大小(Size)是固定的8个字节,是SQL Server的。RowVersion字段的值是自动递增的,不能对该列赋值,但是,当插入一行数据时,该字段自动设置为全局变量@@DBTS的值。原创 2023-11-26 20:50:53 · 591 阅读 · 0 评论 -
SqlServer 获取字符串中数字,中文及字符部分数据
SQLSERVER转载 2022-12-13 10:37:11 · 1495 阅读 · 0 评论 -
datatable linq 查询排序用法总结
LINQ原创 2022-10-13 07:58:17 · 4899 阅读 · 0 评论 -
sqlserver求两行数据之间的差
sqlserver原创 2022-10-13 07:53:58 · 1085 阅读 · 0 评论 -
SQL like 的一小用法“不以什么开头的时候” 或者“不包括什么的时候”
sql原创 2022-07-31 11:11:25 · 1486 阅读 · 0 评论 -
SQL Server2016解析Json格式数据
sqlserver转载 2022-10-13 08:07:31 · 1983 阅读 · 0 评论 -
查询表中所有字段内容的最大长度(大数据情况)
DECLARE @tableName NVARCHAR(50)= 'home';IF OBJECT_ID(N'TableColumnMaxLen', N'U') IS NULL BEGIN CREATE TABLE TableColumnMaxLen ( TableName NVARCHAR(50) NOT NULL , ColumnName NVARCHAR(50) NOT NULL , .转载 2022-04-21 17:28:08 · 1371 阅读 · 0 评论 -
使用 MERGE 语句实现增删改
简介在平常编写增删改的SQL语句时,我们用的最多的就是INSERT、UPDATE和DELETE语句,这是最基本的增删改语句。其实,SQL Server中还有另外一个可以实现增删改的语句,那就是本文将要介绍的MERGE语句。1.什么是MERGE语句1)MERGE语句可以在一条语句中,根据与源表联接的结果,对目标表执行插入、更新或删除操作。 例如,根据在另一个表中找到的差异在一个表中插入、更新或删除行,可以对两个表进行同步。2)为什么使用...转载 2022-04-17 17:45:40 · 806 阅读 · 0 评论 -
SQL Server 中 ROWLOCK 行级锁
一、ROWLOCK的使用1、ROWLOCK行级锁确保,在用户取得被更新的行,到该行进行更新,这段时间内不被其它用户所修改。因而行级锁即可保证数据的一致性,又能提高数据操作的并发性。2、ROWLOCK告诉SQL Server只使用行级锁,ROWLOCK语法可以使用在SELECT,UPDATE和DELETE语句中。3、例如select语句中A 连接中执行SETTRANSACTIONISOLATIONLEVELREPEATABLEREADbegintranselect*...转载 2022-03-24 17:32:46 · 1042 阅读 · 0 评论 -
SQL Server 使用 Hierarchyid 操作层次结构数据
SQL Server 使用 Hierarchyid 操作层次结构数据 - asdyzh - 博客园sqlserver:数据类型Hierarchyid的介绍和用法_火焰-优快云博客使用EF Core操作层次结构数据以前我们存储层次结构常用Id+ParentId的方式,例如:Id ParentId Name 1 null 总公司 2 1 分公司1 3 1 分公司2 4 2 部门A 5 4 小组X 6原创 2021-11-23 21:34:06 · 2543 阅读 · 0 评论 -
SQLserver将字符串分割为数组的函数
一、按指定符号分割字符串,返回分割后的元素个数,方法很简单,就是看字符串中存在多少个分隔符号,然后再加一,就是要求的结果。CREATE function Get_StrArrayLength( @str varchar(1024), --要分割的字符串 @split varchar(10) --分隔符号)returns intasbegin declare @location int declare @start int declare @length int .原创 2021-11-20 13:28:17 · 1603 阅读 · 0 评论 -
使用PowerDesigner对NAME和COMMENT互相转换
PowerDesigner16.5中name和code取消自动关联原创 2021-11-17 07:57:11 · 253 阅读 · 0 评论 -
SQLserver创建自定义异常及raiserror使用方法
--使用系统视图sys.messages查看系统中定义的错误language_id =2052 china language_id =1033 english SELECT * FROM sys.messages WHERE message_id =66666--1.创建自定义错误消息添加到系统消息EXEC sp_addmessage @msgnum = 66666, --错误号 @severity = 16, --严重级别 @msg...原创 2021-11-11 16:45:22 · 2014 阅读 · 0 评论 -
实战:数据表死锁引发.netcore api接口进入后无返回结果
请求进入后无响应 ,是由于数据表死锁了解决办法:1、缩短数据库访问时间。2、清除死锁的表exec('kill 125 ')原创 2021-11-02 21:13:03 · 450 阅读 · 0 评论 -
SqlServer try catch 捕获不到的一些错误及解决方法
IF (OBJECT_ID('AA','U') IS NOT NULL) DROP TABLE AA CREATE TABLE AA(ID INT) SELECT * FROM AA --注:数据库当前只存在表AA,无表#BB和表BB ----------------------------------------------------- ----------------------------------------------------- -- .转载 2021-10-22 17:01:21 · 943 阅读 · 0 评论 -
SQLSERVER进程CPU使用率100%
解决SQLSERVER2008 CPU使用率99%:1、dbcc checkdb 重建索引2、檢查有沒有死鎖 -- sp_lock SELECT request_session_id spid , OBJECT_NAME(resource_associated_entity_id) tableName FROM sys.dm_tran_locks WHERE resource_type = 'OBJECT' -- kill spid 解除死锁 k...转载 2021-10-22 16:52:54 · 1160 阅读 · 0 评论 -
sql server2016里面的json功能
测试一下基本的,从查询结果里面构造一个json 的格式create table t1(ID int identity,name nvarchar(50),Chinese int ,Math int)insert into t1 values ('张三',90,80),('李四',75,90),('王五',68,100)select * from t1select * from t1 for json auto--查询结果ID name转载 2021-10-22 16:49:38 · 1304 阅读 · 1 评论 -
sql server 小技巧 集锦
sql server 小技巧(1) 导入csv数据到sql serversql server 小技巧(2) 删除sql server中重复的数据sql server 小技巧(3) SQL Server 2012 数据库完整导出到SQL Azure (包括数据)sql server 小技巧(4) Sql server 排序时让空值排在最后sql server 小技巧(5) Sql server 获取指定字符后的所有字符 - 去掉指定字符前的所有字符sql server 小技巧(6) C转载 2021-10-20 17:15:31 · 253 阅读 · 0 评论 -
SQL将Json字符串转为表格
支持复杂结构的使用..使用Parent_ID来对应Object_ID产生关系就好..实现对Json数据的从文字到表变量的转换..例:[ { "FieldName": "DateKey", "Title": "汇总后日期", "Description": "", "DataType": 4, "DataGroup": 0, "SumMethod": 0, "DataSu..转载 2021-10-11 23:20:15 · 2256 阅读 · 1 评论 -
多表关联分页查询存储过程(SqlServer)
1.存储过程 数据库函数exec()执行sql字符串有“sql注入风险”,不推荐使用!CREATE PROCEDURE [dbo].[p_PageList]@Tables varchar(1000), --表名,多表是请使用 tA a inner join tB b On a.AID = b.AID@Sort varchar(200) = '', --排序字段和排序方向@PageNumber int = 1, ...原创 2021-09-28 08:00:04 · 765 阅读 · 0 评论 -
SQLServer存储过程自制数据字典
相信很多小伙伴都对【数据字典】很头疼。小编刚入职的时候,老大丢一个项目过来,就一个设计文档,数据字典木有,字段说明木有,全部都需要靠“联系上下文”来猜。所以小伙伴门一定要养成说明字段的习惯哦。说明字段后我们无需特意建立数据字典,直接建立一个存储过程就可以查询字段意义了。存储过程建立如下,小伙伴们直接拷贝执行就行了。/****** Object: StoredProcedure [dbo].[sp_tableDict] Script Date: 2019/1/14 10:49转载 2021-08-08 14:21:20 · 418 阅读 · 0 评论 -
手把手教你基于SqlSugar4编写一个可视化代码生成器(生成实体,以SqlServer为例,文末附源码)
在开发过程中免不了创建实体类,字段少的表可以手动编写,但是字段多还用手动创建的话不免有些浪费时间,假如一张表有100多个字段,手写有些不现实。这时我们会借助一些工具,如:动软代码生成器、各种ORM框架自带的代码生成器等等,都可以使用。我们现在就基于SqlSugar(ORM框架)自己动手制造一个轮子,以SqlServer为例。我们先看一下成品效果,源码下载:链接:https://pan.baidu.com/s/1745ICwMFqYHUy0Nqfk1wmg提取码:xion复制这段内容后.转载 2021-08-08 14:20:43 · 1377 阅读 · 0 评论 -
SqlServer事务详解(事务隔离性和隔离级别详解)
目录概述 什么是事务(定义) 事务的4个特性(特性) 原子性(atomicity) 一致性(consistency) 隔离性(isolation) 持久性(durability) 事务的分类 (分类) 简单事务应用示例 事务不隔离导致的问题 1、更新丢失(Lost update) 2、脏读(Dirty Reads) 3、不可重复读(Non-repeatable Reads) 事务的隔离级别 1、未提交读取(相当于with(nolock)):第一级别 2、转载 2021-08-08 11:16:27 · 1604 阅读 · 0 评论 -
分页查询数据并动态拼接where条件
目录前言 创建存储过程并执行 1、创建带参的存储过程 2、定义一个参数,用于接受拼接后的sql语句 3、创建一个临时表,用于存储查询拼接条件后的结果集 4、分页查询返回最终的sql语句和总行数,查询条件加上临时表的数据,最后删除临时表 完整存储过程代码 调用存储过程 1、没有动态拼接where条件 2、有动态拼接where条件 回到顶部前言开发中查询功能是贯穿全文的,我们来盘一盘使用存储过程分页查询,并且支持动态拼接where条件。划重点:支持动态拼接w转载 2021-08-08 11:14:06 · 1396 阅读 · 0 评论 -
使用ApexSql Log2018快速恢复数据库被删除的数据
作为开发人员,误操作数据delete、update、insert是最正常不过的了,比如:删除忘记加where条件; 查询为了图方便按了F5,但是数据里面夹杂着delete语句。不管是打着后发动机声音噪音过大,缸筒活塞间隙过大,做过全身划痕处理;还是喷过全身漆,对于有经验的老司机来说,这些都是不是事(还原一下数据库日志恢复就OK),但是对于驾驶经验不足的人来说就难以驾驶了,只能重新换车(请教DBA:数据库管理员)。但是并不是所有公司都有DBA,或者认识的朋友是DBA,那只能靠自己了,怎么办转载 2021-08-08 11:05:38 · 1920 阅读 · 0 评论 -
MSSQL中游标例子-纵转横
/*纵向表内容f_billno,f_invname0001 商品10002 商品A0001 商品20001 商品30002 商品B0003 商品I0003 商品II目标效果fid,ftext0001 商品1商品2商品30002 商品A商品B0003 商品I商品II以下是SQL语句,用到了临时表和游标的使用。*/--查看源数据select f_billno,f_invname...原创 2021-07-14 07:49:08 · 164 阅读 · 0 评论 -
sqlserver查询语句传变量很慢(实测通过)
不传变量查询只需1秒以内,传变量查询需要10秒很慢解决办法 在查询语句最后加上重新编译参数option(RECOMPILE) ,查询仅用1秒。原创 2021-06-09 18:59:06 · 879 阅读 · 1 评论 -
存储过程嵌套事务处理
-- SQLServer 存储过程嵌套事务处理/***某个存储过程可能被单独调用,也可能由其他存储过程嵌套调用,则可能会发生嵌套事务的情形。下面是一种解决存储过程嵌套调用的通用代码,在不能确定存储过程是否可能被其他存储过程调用的情况下,建议每个存储过程都按照这个模板建立create proc proc_exam,当然调用存储过程的地方,需要判断存储过程的返回值来做相应的处理***/CREATE proc proc_exampleasbegin --声明变量,存放当前已开启...原创 2021-03-05 18:25:19 · 867 阅读 · 2 评论 -
Sql Server存储过程事务处理
Sql Server存储过程事务处理 https://www.cnblogs.com/rachael/p/10095248.html-- =============================================-- Author:<rachael>-- Create date: <2019-1-4>-- Description: <存储过程说明>-- =============================================.原创 2021-03-04 07:34:47 · 1126 阅读 · 1 评论 -
利用游标+事务批量更新邮件任务预警
利用游标+事务批量更新邮件任务预警https://david.blog.youkuaiyun.com/article/details/108396869背景大部分企业一般都有自研或通过系统配置邮件预警系统。涉及到邮件接受人,抄送人,密送人。存在以下两种情况给运维带来一点压力;如果预警任务比较多,人员变动比较频繁的时候。手动作业显得效率低下。企业邮件地址批量变更传统方式通过写一个脚本,批量更新。针对单个地址变更OK,如果批量效率也显得比较低改进作业总体思路:(1)设计变更表([EmailUpd原创 2021-03-05 18:25:31 · 300 阅读 · 2 评论 -
sqlserver时间戳 RowVersion 用法
RowVersion 用法https://www.cnblogs.com/ljhdo/p/4791838.htmlhttps://www.cnblogs.com/ljhdo/p/11983708.html SQL高手在数据表更新时,如何表征每个数据行更新时间的先后顺序?最简单的做法是使用RowVersion(行版本)字段,它和时间戳(TimeStamp)类型的功能相似,只不过TimeStamp?已过时,应避免用于产品设计中,应使用RowVersion代替。RowVersion是一种自增的数据类型.原创 2021-03-04 07:34:05 · 1378 阅读 · 1 评论 -
SQLSERVER存储过程分页(实测通过)
USE CXHDJGOdeclare @p5 intset @p5=97exec CXHDJ.dbo.SP_Page @SQL=N'SELECT tp.Id,tp.Name,tp.Code ,tp.Price ,tp.CostPrice,tp.Color ,tp.Number,tpc.Name AS catname,tp.CreateTime ,tp.CreateBy FROM CXHDJ.dbo.Test_Product tpINNER JOIN CXHDJ.dbo.Test_Produ.原创 2021-03-05 18:25:43 · 189 阅读 · 2 评论
分享