一直习惯使用sys.master_files来统计数据库的大小以及使用情况,但是发现sys.master_files不能准确统计tempdb的数据库大小信息.如下所示: SELECT       database_id                                AS DataBaseId             ,DB_NAME(database_id)                       AS DataBaseName             ,Name      …
在我们的OLAP的实现中,SQL超级复杂,用了很多的临时表,tempdb在安装时默认选择了安装SQLserver的本地磁盘路径,没有使用磁盘阵列. 在学习PostgreSQL时发现很多专家建议把临时表空间放在SSD上或者使用RAID0+1的方式来提高写入速度,从而提高性能. 因而就选了一个比较复杂的SQL语句进行了相关测试,发现TempDB的存放路径对性能有很大的影响. 测试描述,单个临时表55w行,共生成8张临时表,最后8个临时表做join联接select group by 测试结果如下: 1…
本文目录列表: 1.sys.sp_helptext存储的功能和效果 2.重构sys.sp_helptext存储(命名为dbo.usp_helptext)提供直观的效果 3.sys.sp_helptext和dbo.usp_helptext的限制以及解决方案 4.总结语 5.参考清单列表   1.sys.sp_helptext存储的功能和效果   近来在研究sql server提供的现实可编程对象定义体的方法包括:sys.syscomments(视图).sys.all_sql_modules(sys…
=================================版权声明================================= 版权声明:原创文章 谢绝转载  请通过右侧公告中的“联系邮箱(wlsandwho@foxmail.com)”联系我 勿用于学术性引用. 勿用于商业出版.商业印刷.商业引用以及其他商业用途. 本文不定期修正完善. 本文链接:http://www.cnblogs.com/wlsandwho/p/5075789.html 耻辱墙:http://www.cnblo…
转自:https://blog.csdn.net/yenange/article/details/50493580 查询数据文件与日志文件占用情况,查看数据大小,查看库大小 1. 查看数据文件占用(权限要求较大) DBCC showfilestats 2. 查看日志文件占用 dbcc sqlperf(logspace) USE master go--简易版 SELECT Name, physical_name, Size/128.0 AS [Size(MB)], FILEPROPERTY(Nam…
Computed Column(计算列)是自SQL Server 2005开始就有的特性.计算列的定义是一个表达式.表达式可以是非计算列,常量,函数间的组合.但是不可以是子查询. 计算列数据固化 默认情况下计算列的数据是存储在磁盘上,仅当计算列被查询引用是才进行实时计算.只在计算列在定义是添加了PERSISTED关键词是才将数据固化. 计算列上创建索引或者作为分区函数的引用列 计算列上是运行创建索引和作为分区函数的引用列.但是必须指定PERSISTED关键词. 用法其实很简单.那么这里有些问题.…
在实际工作上遇到的问题: 在订单表中有某项商品是将“订购数量(Quantity)”乘以“单件价格(UnitCost)”等于该项商品的总价(Subtotal). 在数据表中有的列(以下皆改叫为“字段”)是通过其他的已有字段计算而来的,这样的字段为计算字段. 在 SQL Server 2005 的 SQL Server Management Studio(即SSMS) 中新添加的字段是须有数据类型和是否为NULL的属性的,但是计算字段却是没有属性的,那么如何在已有的数据表OrderDetail中添加…
为了安全起见,使用的时候,先数据备份一遍 作者hongb:SQL Server:查看SQL日志文件大小命令:dbcc sqlperf(logspace) https://www.cnblogs.com/hongb/p/5113474.html 作者slimboy123:SQL Server日志文件过大 大日志文件清理方法 不分离数据库 http://blog.csdn.net/slimboy123/article/details/54575592 --1.在SQL2008中清除日志就必须在简单模…
前些天客户提出一个这样的要求:一个手机订餐网,查询当前所在位置的5公里范围的酒店,然后客户好去吃饭. 拿到这个请求后,不知道如何下手,静静地想了一下,在酒店的表中增加两个字段,用来存储酒店所在的经度和纬度,当订餐的时候,要求手机得到当前客户所在的经度和纬度传过来,再与数据库中酒店的经度和纬度计算一下,就查出来. 为了在数据库中查询两点之间的距离,所以这个函数需要在数据库中定义. 我网上找了很久,却没有找到这个函数.最后在CSDN上,一个朋友的帮助下解决了这个问题,非常感谢lordbaby给我提供…
在系统视图sys.syslogins中,有createdate与updatedate两个字段,分别表示创建登录名与更新登录名的日期,如果你用updatedate的值来判断一个登录名的权限是否被修改过,那么你就要跳坑里了.当然sys.sysusers视图里面updatedate字段也不能作为某个user权限最后一次修改的依据,如下测试所示: USE [master] GO CREATELOGIN [kerry] WITHPASSWORD=N'kerry123456',DEFAULT_DATABAS…