-
SQLReportBuilder报表里面的常见问题分析
一SQL报表常常会遇到在表格中的相除,如果分母为零,一般会显示错误号,我们可以这么处理:(加上是A/B)=A/iif(B=0,99999999999999,B)但是我们不能这么写:=iif(B=0,0,A/B) //我们不能这么写,会产生BUG,至于什么BUG,你们可以自己试试二我们假设报表中的某一个格子的名字为A,我们在A中需要引用另一个格子B的值,在这种情况下,我们通常会把B中的计算公式再次引用在A中复制一遍,这样很导致很麻烦。我们可以在A中直接这么写:ReportItems!B表的名字.Value这样就不需要再一次得把公式写一遍了三在报表曲线图中的横坐标,倘若我们需要动态得变化横坐标,我们这时候一般会把轴选项设置为自动,但是这样往往得不到我们想要的结果,下面的例子就是根据参数(开始时间和结束时间)的间隔动态地改变横坐标的样式水平轴属性》数字》自定义=IIf(Parameters!startime.Value=Parameters!endtime.Value,"",iif(DateAdd(DateInterval.day,-4,Parameters!endtime.Val...
数据库操作教程 2022-09-23 17:49:15 -
深入浅析SQLServer触发器
触发器是一种特殊类型的存储过程,它不同于之前的我们介绍的存储过程。触发器主要是通过事件进行触发被自动调用执行的...
数据库操作教程 2022-09-23 17:47:11 -
MyBatisMapperProviderMessageFormat拼接批量SQL语句执行报错的原因分析及解决办法
最近在项目中有这么一段代码:下载服务器基础业务数据进行本地批量插入操作,因项目中使用mybatis进行持久化操作,故直接考虑使用mybatis的批量插入功能。1.以下是Mapper接口的部分代码publicinterfacePrintMapper{@InsertProvider(type=PrintMapperProvider.class,method="insertAllLotWithVehicleCode4H2")voidinsertAllLotWithVehicleCode(List<LotWithVehicleCodeBO>lotWithVehicleCodes);}2.对应MapperProvider中函数片段publicStringinsertAllLotWithVehicleCode4H2(Map<String,List<LotWithVehicleCodeBO>>map){List<LotWithVehicleCodeBO>lotWithVehicleCodeBOs=map.get("list");StringBuilde...
数据库操作教程 2022-09-23 17:44:13 -
SQLServer无法收缩日志文件的原因分析及解决办法
最近服务器执行收缩日志文件大小的job老是报错我所用的一个批量收缩日志脚本USE[master]GO/******Object:StoredProcedure[dbo].[ShrinkUser_DATABASESLogFile]ScriptDate:01/05/201609:52:39******/SETANSI_NULLSONGOSETQUOTED_IDENTIFIERONGOALTERPROC[dbo].[ShrinkUser_DATABASESLogFile]ASBEGINDECLARE@DBNAMENVARCHAR(MAX)DECLARE@SQLNVARCHAR(MAX)--临时表保存数据CREATETABLE#DataBaseServerData(IDINTIDENTITY(1,1),DBNAMENVARCHAR(MAX),Log_Total_MBDECIMAL(18,1)NOTNULL,Log_FREE_SPACE_MBDECIMAL(18,1)NOTNULL)--游标DECLARE@itemCurCURSORSET@itemCur=CURSORFORSELECTnamef...
数据库操作教程 2022-09-23 17:41:41 -
深入学习SQLServer聚合函数算法优化技巧
Sqlserver聚合函数在实际工作中应对各种需求使用的还是很广泛的,对于聚合函数的优化自然也就成为了一个重点,一个程序优化的好不好直接决定了这个程序的声明周期。Sqlserver聚合函数对一组值执行计算并返回单一的值...
数据库操作教程 2022-09-23 17:37:03 -
SQLSERVER修改函数名容易引发的问题分析
1.问题今天遇到一个奇怪的问题:使用sp_helptextXXX查询出来的函数定义名竟然跟函数名不同,而sp_helptext实际是查询sys.all_sql_modules这个系统视图的。直接查询这个视图的definition字段,发现跟sp_helptext是一样的...
数据库操作教程 2022-09-23 17:34:20 -
SqlServer2012中LEAD函数简单分析
LEAD函数简单点说,就是把下一行的某列数据提取到当前行来显示,看示例更能解释清楚,先看测试用脚本DECLARE@TestDataTABLE(IDINTIDENTITY(1,1),DepartmentVARCHAR(20),LastNameVARCHAR(20),RateFLOAT)INSERTINTO@TestData(Department,LastName,Rate)SELECT'DocumentControl','Arifin',17.7885UNIONALLSELECT'DocumentControl','Norred',16...
数据库操作教程 2022-09-23 17:34:11 -
和表值函数连接引发的性能问题分析
表值函数 SQLServer中提供了类似其他编程语言的函数,而函数的本质通常是一段代码的封装,并返回值。在SQLServer中,函数除了可以返回简单的数据类型之外(Int、Varchar等),还可以返回一个集合,也就是返回一个表...
数据库操作教程 2022-09-23 17:33:25 -
深入分析SQLServer存储过程
Transact-SQL中的存储过程,非常类似于Java语言中的方法,它可以重复调用。当存储过程执行一次后,可以将语句缓存中,这样下次执行的时候直接使用缓存中的语句...
数据库操作教程 2022-09-23 17:32:32 -
深入浅出解析mssql在高频,高并发访问时键查找死锁问题
死锁对于DBA或是数据库开发人员而言并不陌生,它的引发多种多样,一般而言,数据库应用的开发者在设计时都会有一定的考量进而尽量避免死锁的产生.但有时因为一些特殊应用场景如高频查询,高并发查询下由于数据库设计的潜在问题,一些不易捕捉的死锁可能出现从而影响业务...
数据库操作教程 2022-09-23 17:32:21 -
SQLSERVER中关于exists和in的简单分析
In与Exists这两个函数是差不多的,但由于优化方案不同,通常NOTExists要比NOTIN要快,因为NOTEXISTS可以使用结合算法二NOTIN就不行了,而EXISTS则不如IN快,因为这时候IN可能更多的使用结合算法。如图,现在有两个数据集,左边表示#tempTable1,右边表示#tempTable2...
数据库操作教程 2022-09-23 17:32:11