-
SQLServer日期函数CAST和CONVERT以及在业务中的使用介绍
最近时间刚从客户端转入后台写服务,对于后台数据库以及服务的书写完全是个小白,所以最近写的肯定没有太多技术含量。首先把遇到的问题摆出来:还是那张错误上报表,字段主要有上报错误ID(ErrorID),上报人(ReportPerson),上报时间(ReportTime)精确到毫秒,现在要做的统计是:(1)统计一定时间内【起止时间精确到毫秒】(beginTime,endTime)每个人每天上报的错误个数(2)统计一定时间内【起止时间到精确到月】(beginTime,endTime)按月统计每个人上报的错误总数...
数据库操作教程 2022-09-23 17:06:21 -
sqlnotin与notexists使用中的细微差别
上面两个简单的Sql,我们从表面理解,查询的最终结果应该是一样的,但实际结果却和我们想象的不一样第一条sql查询的结果有一条数据第二条sql查询的结果却为空 原因:notexists的子查询,对于子查询不返回行和子查询返回行的查询结果是有区别的这些细小的差别千万不要被我们所忽视,一旦项目庞大了,想跟踪到具体的错误所花费的时间也是可观的。尽量把这些不必要的错误扼杀在摇篮里...
数据库操作教程 2022-09-23 17:04:50 -
MSSQL数据库获取TEXT字段的内容长度
SQLServer数据库如何获取TEXT字段的内容长度的方法,是通过DATALENGTH函数来实现的,接下来我们就通过DATALENGTH函数的语法及使用实例来了解一下这部分内容。DATALENGTH用来返回任何表达式所占用的字节数...
数据库操作教程 2022-09-23 17:02:38 -
oracle忘记sys/system/scott用户密码的解决方法
一、忘记除SYS、SYSTEM用户之外的用户的登录密码。 用SYS(或SYSTEM)用户登录...
数据库操作教程 2022-09-23 17:01:54 -
对有insert触发器表取IDENTITY值时发现的问题
问题是这样的:T1表上有一个INSERT的触发器,在插入数据的时候,会自动往T2表里面插一条记录这样当我在T1表上插入新的数据时,取@@IDENTITY的时候,返回的id值是T2表里面的新记录的值赶快查了下msdn,原来@@IDENTITY还有这么多讲究:在一条INSERT、SELECTINTO或大容量复制语句完成后,@@IDENTITY中包含语句生成的最后一个标识值。如果语句未影响任何包含标识列的表,则@@IDENTITY返回NULL...
数据库操作教程 2022-09-23 17:01:50 -
关于SQL中CTE(公用表表达式)(CommonTableExpression)的总结
一.WITHAS的含义WITHAS短语,也叫做子查询部分(subqueryfactoring),可以让你做很多事情,定义一个SQL片断,该SQL片断会被整个SQL语句所用到。有的时候,是为了让SQL语句的可读性更高些,也有可能是在UNIONALL的不同部分,作为提供数据的部分...
数据库操作教程 2022-09-23 17:01:44 -
向数据库中插入数据并返回当前插入的行数及全局变量@@IDENTITY应用
数据库中有张表User,字段是ID和Name,ID自增。利用存储过程实现插入时返回当前的行数复制代码代码如下:CREATEPROCProc_InsertUser@namenvarchar(100)ASINSERTINTOdbo.User(Name)VALUES(@name)SELECT@@IDENTITYASID利用全局变量@@IDENTITY实现...
数据库操作教程 2022-09-23 17:00:59 -
AspNetPager分页控件存储过程
复制代码代码如下:SETQUOTED_IDENTIFIERONGOSETANSI_NULLSONGOALTERPROCEDUREusp_PagingLarge@TableNamesVARCHAR(200),--表名,可以是多个表,但不能用别名@PrimaryKeyVARCHAR(100),--主键,可以为空,但@Order为空时该值不能为空@FieldsVARCHAR(200),--要取出的字段,可以是多个表的字段,可以为空,为空表示select*@PageSizeINT,--每页记录数@CurrentPageINT,--当前页,0表示第1页@FilterVARCHAR(200)='',--条件,可以为空,不用填where@GroupVARCHAR(200)='',--分组依据,可以为空,不用填groupby@OrderVARCHAR(200)=''--排序,可以为空,为空默认按主键升序排列,不用填orderbyASBEGINDECLARE@SortColumnVARCHAR(200)DECLARE@OperatorCHAR(2)DECLARE@SortTableVARCHAR(200...
数据库操作教程 2022-09-23 17:00:37 -
SQLServer误区30日谈第15天CheckPoint只会将已提交的事务写入磁盘
误区#15:CheckPoint只会将已提交的事务写入磁盘错误这个误区是由于太多人对日志和恢复系统缺少全面的了解而存在已久。CheckPoint会将自上次CheckPoint以来所有在内存中改变的页写回磁盘(译者注:也就是脏页),或是在上一个CheckPoint读入内存的脏页写入磁盘...
数据库操作教程 2022-09-23 17:00:27 -
除MSSQL数据库text字段中恶意脚本的删方法
方法很简单:text字段不能使用Replace,所以使用patindex复制代码代码如下:-select*fromProductwhereP_Introlike'%<scriptsrc="http://my.stsw518...
数据库操作教程 2022-09-23 16:59:50 -
SQLServerCONVERT函数测试结果
复制代码代码如下:SELECTCONVERT(varchar(100),GETDATE(),0):0516200610:57AMSELECTCONVERT(varchar(100),GETDATE(),1):05/16/06SELECTCONVERT(varchar(100),GETDATE(),2):06.05...
数据库操作教程 2022-09-23 16:58:39 -
SQLserver中用convert函数转换日期格式的方法
SQLServer中文版的默认的日期字段datetime格式是yyyy-mm-ddThh:mm:ss.mmm例如:selectgetdate()整理了一下SQLServer里面可能经常会用到的日期格式转换方法:举例如下:selectCONVERT(varchar,getdate(),120)2004-09-1211:06:08selectreplace(replace(replace(CONVERT(varchar,getdate(),120),'-',''),'',''),':','')20040912110608selectCONVERT(varchar(12),getdate(),111)2004/09/12selectCONVERT(varchar(12),getdate(),112)20040912selectCONVERT(varchar(12),getdate(),102)2004.09.12selectCONVERT(varchar(12),getdate(),101)09/12/2004selectCONVERT(varchar(12),getdate(),103)1...
数据库操作教程 2022-09-23 16:58:06