![](https://img-blog.csdnimg.cn/20201130092759513.jpg?x-oss-process=image/resize,m_fixed,h_224,w_224)
数据库SQL相关
数据库SQL相关
千里走单骑-lwl
记录记录,记录为了更好学习
展开
-
[MS SQL] - 存储过程、函数、视图、触发器的修改日志
存储过程、函数、日志可以多人修改,为了方便追溯与找回原来脚本,建日志表CREATE TABLE [dbo].[sysObjectModifyLog]( [objName] [varchar](1000) NULL, [contents] [nvarchar](max) NULL, [checkdate] [datetime] NULL, [modifydate] [datetime] NULL, [versions] [int] NULL, [objectid] [bigint] NULL原创 2020-11-30 14:29:31 · 231 阅读 · 0 评论 -
[MS SQL] - 两个表字段对比
有时候正式库和测试库同一个表有字段有差异,会造成各种错误,下面语句对比同名表和字段select *from (SELECT TABLENAME = B.NAME, FIELDNAME = A.NAME, FIELDSNO = A.COLID, FIELDTYPE = C.NAME, LENGTH = A.LENGTH, LENSEC = A.XSCALE,原创 2020-11-30 14:01:13 · 2188 阅读 · 0 评论 -
[MS SQL] - 记录表删除操作
由于业务复杂度,有些记录不知道因为什么被删除了,用触发器增加检查CREATE TRIGGER trg_b_sizeseries ON b_sizeseries FOR DELETE AS RAISERROR('错误',16,8) ROLLBACK TRAN CREATE TABLE #T ( EVENTTYPE VARCHAR(20) , PARAMETERS INT原创 2020-11-30 13:51:01 · 126 阅读 · 0 评论 -
[MS SQL] - 分组排序实例
1.根据某字段,重新生成顺序IDselect top 10 ROW_NUMBER() OVER (ORDER BY a.[mb_number]),a.*from ban_makebill_head awhere mb_number < 'MB10000000'2.分组后,按某字段在组内重新生成IDselect sizegroup,sizename,sizevaluefrom b_sizegroup_exselect sizegroup , sizename , ..原创 2020-11-30 13:26:58 · 273 阅读 · 1 评论 -
[MS SQL] - 系统表常用操作
1. 查看语句执行时间SELECT top 100 EQS.total_worker_time,EQS.total_worker_time AS TotalWorkerTime ,EQS.total_logical_reads + EQS.total_logical_writes AS TotalLogicalIO ,EQS.execution_count As ExeCnt ,EQS.last_execution_time AS L.原创 2020-11-30 11:20:56 · 69 阅读 · 0 评论 -
[MS SQL] - 检查数据库 死锁情况& 未提交事务 等
--检查未提交事务dbcc OPENTRAN--查看进程执行语句文本DBCC INPUTBUFFER(2092)---检查死锁情况/* 检查数据库死锁情况*/CREATE PROCEDURE sp_check_lock as begin declare @spid int,@bl int, @intTransactionCountOnEntry int, @intRowcount int, .原创 2020-11-30 11:06:10 · 156 阅读 · 0 评论 -
[MS SQL] - 给表和字段添加说明
给表和字段添加中文说明,方便日后给自己和其他维护人员快速了解表结构。添加说明:EXECUTE [sys].[sp_updateextendedproperty] @name=N'MS_Description', @value=N'主料用量复核' ,@level0type=N'SCHEMA',@level0name=N'dbo',@level1type=N'TABLE',@level1name=N'ban_makebill_head',@level2type=N'COLUMN',@level原创 2020-11-30 10:47:17 · 426 阅读 · 0 评论 -
[MS SQL] - 分组组合字段
有很多时候需要将同组数据合并串起来显示,可以利用FOR XML PATH('')例如:CREATE TABLE #student (studentName varchar(50),className varchar(50))INSERT INTO #student SELECT '小明','英语' union SELECT '小明','数学' union SELECT '小明','语文' union SELECT '小明','历史' union SELECT '...原创 2020-11-30 10:01:51 · 332 阅读 · 0 评论 -
[MS SQL] - 递归问题嵌套层数问题
MS SQL 存储过程,默认最大32层嵌套,超过会报错; 假如需要超过,可以考虑用 公用表表达式 CTE 实现递归;如果层数小不用考虑效率,也可以在代码层实现递归;如果考虑效率,可能用NoSQL 比较好, neo4j 数据库等;...原创 2018-02-08 09:40:34 · 1488 阅读 · 0 评论 -
[MS SQL] - 跨服务器查询
可以用链接服务器 ,也可以用下面方式:SELECT *FROMOPENROWSET('SQLOLEDB','DATABASENAME';'UID';'PWD',tablename)原创 2018-01-31 17:34:15 · 135 阅读 · 0 评论