-
探讨SQLcomputeby的使用分析
GROUPBY子句有个缺点,就是返回的结果集中只有合计数据,而没有原始的详细记录。如果想在SQLSERVER中完成这项工作,可以使用COMPUTEBY子句...
数据库操作教程 2022-09-23 17:24:24 -
深入SQL截取字符串(substring与patindex)的详解
首先学习两个函数1.substring 返回字符、binary、text或image表达式的一部分。基本语法:SUBSTRING(expression,start,length)expression:字符串、二进制字符串、text、image、列或包含列的表达式start:整数,指定子串的开始位置 注:SQL中"1"表示字符串中的第一个字符,而.NET中"0"表示第一个字符length:整数,指定子串的长度(要返回的字符数或字节数)2.patindex 返回指定表达式中某模式第一次出现的起始位置;如果在全部有效的文本和字符数据类型中没有找到该模式,则返回零...
数据库操作教程 2022-09-23 17:17:07 -
ROW_NUMBERSQLServer2005的LIMIT功能实现(ROW_NUMBER()排序函数)
语法:ROW_NUMBER()OVER([<partition_by_clause>]<order_by_clause>)备注:ORDERBY子句可确定在特定分区中为行分配唯一ROW_NUMBER的顺序。参数:<partition_by_clause>将FROM子句生成的结果集划入应用了ROW_NUMBER函数的分区...
数据库操作教程 2022-09-23 17:13:50 -
SQLServer误区30日谈第12天TempDB的文件数和需要和CPU数目保持一致
误区#12:TempDB的文件数和需要和CPU数目保持一致错误 哎,由于上述误区是微软“官方”的建议,并且还有大量博文坚持这个观点,这个误区已经是老生常谈。 但让人困惑的是SQLCAT团队给出的建议就是1:1,但这个建议是源自扩展方面的原理来说,而不是一个通用法则...
数据库操作教程 2022-09-23 17:07:06 -
SQLServer误区30日谈第19天Truncate表的操作不会被记录到日志
误区#19:Truncate表的操作不会被记录到日志错误在用户表中的操作都会被记录到日志。在SQLServer中唯一不会被记录到日志的操作是TempDB中的行版本控制...
数据库操作教程 2022-09-23 17:06:32 -
SQLServer误区30日谈第27天使用BACKUPWITHCHECKSUM可以替代DBCCCheckDB
误区#27:使用BACKUP...WITHCHECKSUM可以替代DBCCCheckDB错误 乍一看,由于BACKUPWITHCHECKSUM会检测所有分配出去的页的校验和的值,这个误区貌似是这么回事,但实际上并不是这么回事,原因如下: 由SQLServer2000或是更早版本升上来的数据库pagechecksums必须开启,在开启后,并不是数据库中所有的页都会被叫上页校验和,当页损坏发生时,IO系统可不会区分损坏的页是有页校验和还是没有校验和的。所以使用BACKUP...WITHCHECKSUM就有可能导致一些损坏页不被发现,造成的后果…… 除此之外,还有一个问题是完整备份的时间间隔相对比较长,假如说一个月,而相对于DBCCCheckDB的最佳实践是一个礼拜,这导致WITHCHECKSUM不能替代CHECKDB...
数据库操作教程 2022-09-23 17:03:22 -
如何创建支持FILESTREAM的数据库示例探讨
本主题说明如何创建支持FILESTREAM的数据库。由于FILESTREAM使用一种特殊类型的文件组,因此,在创建数据库时,必须至少为一个文件组指定CONTAINSFILESTREAM子句...
数据库操作教程 2022-09-23 17:03:19 -
SQLTranscation的一些总结分享
1.1.1摘要相信大家对于SQLTranscation再熟悉不过,它确保了数据库的数据一致性和安全性,尤其在对数据执行增删时,如果发生异常和错误它就会触发事务回滚,从而确保了我们数据的一致性和安全性,下面我们将通过分四部分介绍事件(Transcation)。1.1.2正文首先让我们通过一个具体的例子介绍Transcation的使用,假如我们的数据库中有一个表UserInfo,它包含三个字段分别为:UserID(自增)、UserName(nvarchar)和LuckyNumber(tinyint),如下图所示:图1UserInfo表UserInfo表的sql代码如下:复制代码代码如下:--ThedefinitionofUserInfo.SETANSI_NULLSONGOSETQUOTED_IDENTIFIERONGOCREATETABLE[dbo].[UserInfo]([UserID][int]IDENTITY(1,1)NOTNULL,[UserName][nvarchar](50)NOTNULL,[LuckyNumber][tinyint]NOTNULL)ON[PRIMARY]接着我...
数据库操作教程 2022-09-23 17:02:11 -
SQLServer误区30日谈第18天有关FileStream的存储,垃圾回收以及其它
误区#18:如下多个有关FileStream的误区全部错误18a)FileStream数据可以在远程存储 不能,由于FileStream数据容器(指的是存放FileStream文件的NTFS文件夹,杜撰出来的术语)必须像数据文件或日志文件那样符合本地存储策略-也就是说,这个数据容器必须放在对于运行SQLServer的WindowsServer是本地存储(译者注:也就是在‘计算机'里能看到的存储,DAC当然是了,其实SAN这类不直接连接服务器的也算是)访问FileStream数据只要客户端连接到了SQLServer服务器并获取响应的事务上下文后,就可以通过UNC路径进行访问了。18b)FileStream的数据容器可以嵌套 不能,对于同一个数据库的两个不同的FileStream容器可能在同一个目录下,但是却不能嵌套...
数据库操作教程 2022-09-23 16:59:41 -
SQLSERVER中union,cube,rollup,cumpute运算符使用说明
/*--1UNION运算符是将两个或更多查询的结果组合为单个结果集使用UNION组合查询的结果集有两个最基本的规则:1。所有查询中的列数和列的顺序必须相同...
数据库操作教程 2022-09-23 16:56:38 -
sqlserver多表关联时在where语句中慎用trim()方法
类似如下:selectA.key,B.key,C.keyfromA,B,Cwheretrim(A.key)=trim(B.fk)andtrim(A.col)=trim(C.pk)。在主表A(200多条记录)关联附表B(4万多条记录)时用了1秒钟时间,该值在不同机器执行可能有所差异,但比不加trim速度稍微慢一些,但是不是特别明显...
数据库操作教程 2022-09-23 16:55:42 -
sqlserver日志恢复方法(搞定drop和truncate)
--1usemasterbackupdatabaselogTesttodisk='D:ProgramFilesMicrosoftSQLServerMSSQL10.MSSQLSERVERMSSQLBackuplogTest...
数据库操作教程 2022-09-23 16:55:03