-
SQLServer中数据行批量插入脚本的存储实现
无意中看到朋友写的一篇文章“将表里的数据批量生成INSERT语句的存储过程的实现”。我仔细看文中的两个存储代码,自我感觉两个都不太满意,都是生成的单行模式的插入,数据行稍微大些性能会受影响的...
数据库操作教程 2022-09-23 17:47:36 -
查询Sqlserver数据库死锁的一个存储过程分享
使用sqlserver作为数据库的应用系统,都避免不了有时候会产生死锁,死锁出现以后,维护人员或者开发人员大多只会通过sp_who来查找死锁的进程,然后用sp_kill杀掉。利用sp_who_lock这个存储过程,可以很方便的知道哪个进程出现了死锁,出现死锁的问题在哪里.创建sp_who_lock存储过程CREATEproceduresp_who_lockasbegindeclare@spidintdeclare@blkintdeclare@countintdeclare@indexintdeclare@locktinyintset@lock=0createtable#temp_who_lock(idintidentity(1,1),spidint,blkint)if@@error<>0return@@errorinsertinto#temp_who_lock(spid,blk)select0,blockedfrom(select*frommaster..sysprocesseswhereblocked>0)awherenotexists(select*frommas...
数据库操作教程 2022-09-23 17:47:30 -
SQLServer数据汇总五招轻松搞定
本文我们将讨论如何使用GROUPBY子句来汇总数据。使用单独列分组GROUPBY子句通过设置分组条件来汇总数据,在第一个例子中,我在数据库AdventureWork2012中的表Sales.SalesOrderDetail.中的一列上进行数据分组操作...
数据库操作教程 2022-09-23 17:47:20 -
SQLServer比较常见数据类型详解
在SQLServer中每个变量、参数、表达式等都有数据类型。系统提供的数据类型分为几大类,如表4-2所示...
数据库操作教程 2022-09-23 17:47:15 -
深入浅析SQLServer触发器
触发器是一种特殊类型的存储过程,它不同于之前的我们介绍的存储过程。触发器主要是通过事件进行触发被自动调用执行的...
数据库操作教程 2022-09-23 17:47:11 -
SqlServer使用casewhen解决多条件模糊查询问题
我们在进行项目开发中,经常会遇到多条件模糊查询的需求。对此,我们常见的解决方案有两种:一是在程序端拼接SQL字符串,根据是否选择了某个条件,构造相应的SQL字符串;二是在数据库的存储过程中使用动态的SQL语句...
数据库操作教程 2022-09-23 17:47:05 -
SqlServer异常处理常用步骤
SQLServer常见的问题主要是SQL问题造成,常见的主要是CPU过高和阻塞。一、CPU过高的问题1、查询系统动态视图查询执行时间长的sql语句WITHProcessCTE(blocked)AS(SELECTspidFROMsys.sysprocessesWHEREcpu>500)SELECTdistincta.*FROM(SELECTTEXT,AA.*FROMsys.sysprocessesAACROSSAPPLYsys.dm_exec_sql_text(AA.sql_handle))aJOINProcessCTEbucteWITH(NOLOCK)ONbucte.blocked=a.spid--whereloginame='TCScenery'ORDERBYa.CPU二、阻塞问题1、查询系统动态视图查询阻塞的sql语句WITHProcessCTE(blocked)AS(SELECTblockedFROMsys.sysprocessesWHEREblocked>0unionSELECTblockedFROMsys.sysprocessesWHEREblocked>0...
数据库操作教程 2022-09-23 17:47:03 -
配置SQLServer数据库恢复模式(2种方法)
下面主要介绍配置SQLServer数据库恢复模式的两种方法。用T-SQL设置恢复模式你可以使用“ALTERDATABASE”命令加“SETRECOVERY”语句来修改数据库的恢复模式...
数据库操作教程 2022-09-23 17:47:00 -
SQLSERVER中GO的作用详解
具体不废话了,请看下文详解。usedb_CSharpgoselect*,备注=casewhenGrade>=90then'成绩优秀'whenGrade<90andGrade>=80then'成绩良好'whenGrade<80andGrade>=70then'成绩及格'else'不及格'endfromtb_Grade如果只是执行一条语句,有没有GO都一样如果多条语句之间用GO分隔开就不一样了每个被GO分隔的语句都是一个单独的事务,一个语句执行失败不会影响其它语句执行...
数据库操作教程 2022-09-23 17:46:55 -
修改SQL-SERVER数据库表结构的SQL命令附sql命令行修改数据库
具体不废话了,请看下文代码详细说明吧。向表中增加一个varchar列: ALTERTABLEdistributorsADDCOLUMNaddressvarchar(30); 从表中删除一个字段: ALTERTABLEdistributorsDROPCOLUMNaddressRESTRICT; 在一个操作中修改两个现有字段的类型: ALTERTABLEdistributors ALTERCOLUMNaddressTYPEvarchar(80), ALTERCOLUMNnameTYPEvarchar(100); 使用一个USING子句,把一个包含UNIX时间戳的integer字段转化成timestampwithtimezone: ALTERTABLEfoo ALTERCOLUMNfoo_timestampTYPEtimestampwithtimezone USING timestampwithtimezone'epoch'+foo_timestamp*interval'1second'; 对现存字段改名: ALTERTABLEdistributorsRENAME...
数据库操作教程 2022-09-23 17:46:50 -
如何把sqlserver数据迁移到mysql数据库及需要注意事项
在项目开发中,有时由于项目开始时候使用的数据库是SQLServer,后来把存储的数据库调整为MySQL,所以需要把SQLServer的数据迁移到MySQL。下面是小编日常整理的一种sqlserver数据库迁移的方法...
数据库操作教程 2022-09-23 17:46:48 -
SQLServer分页查询通用存储过程(只做分页查询用)
自开始做项目以来,一直在用。这段存储过程的的原创者(SORRY,忘记名字了),写得这段SQL代码很不错,我在这个基础上,按照我的习惯以及思维方式,调整了代码,只做分页查询用...
数据库操作教程 2022-09-23 17:46:44