-
SQLServer获取磁盘空间使用情况
对于DBA来说,监控磁盘使用情况是必要的工作,然后没有比较简单的方法能获取到磁盘空间使用率信息,下面总结下这些年攒下的脚本:最常用的查看磁盘剩余空间,这个属于DBA入门必记的东西:--查看磁盘可用空间EXECmaster.dbo.xp_fixeddrivesxp_fixeddrives方式有点是系统自带,可直接使用,缺点是不能查看磁盘总大小和不能查看SQLServer未使用到的磁盘信息使用sys.dm_os_volume_stats函数--======================================================================--查看数据库文件使用的磁盘空间使用情况WITHT1AS(SELECTDISTINCTREPLACE(vs.volume_mount_point,':','')ASDrive_Name,CAST(vs.total_bytes/1024.0/1024/1024ASNUMERIC(18,2))ASTotal_Space_GB,CAST(vs.available_bytes/1024.0/1024/1024ASNUME...
数据库操作教程 2022-09-23 18:21:17 -
SQLServerAlwayson创建代理作业的注意事项详解
前言AlwaysOn可用性组活动辅助功能包括支持在辅助副本上执行备份操作。备份操作可能会给I/O和CPU带来很大的压力(使用备份压缩)...
数据库操作教程 2022-09-23 18:21:12 -
SqlServer在事务中获得自增ID的实例代码
SqlServer在事务中获得自增ID实例代码在sqlserver中插入数据时,如何返回自增的主键ID,方式有很多,这里提供一种。代码如下:USEtempdbgoCREATETABLEtable1(idINT,employeeVARCHAR(32))goINSERTINTOtable1VALUES(1,'one')INSERTINTOtable1VALUES(2,'two')INSERTINTOtable1VALUES(3,'three')INSERTINTOtable1VALUES(4,'four')GOCREATETABLEtable2(idINTIDENTITY(1,1),employeeVARCHAR(32))GO--=================================--用OUTPUT把ID插入@MyTableVar--=================================DECLARE@MyTableVarTABLE(idINT)INSERTINTOtable2(employee)OUTPUTINSERTED.idINTO@MyTabl...
数据库操作教程 2022-09-23 18:21:06 -
SQLServer实时同步更新远程数据库遇到的问题小结
工作中遇到这样的情况,需要在更新表TableA(位于服务器ServerA172.16.8.100中的库DatabaseA)同时更新TableB(位于服务器ServerB172.16.8.101中的库DatabaseB)。TableA与TableB结构相同,但数据数量不一定相同,应为有可能TableC也在更新TableB...
数据库操作教程 2022-09-23 18:21:03 -
SQLServer2016配置SA登录教程
tips:在win10中查找SQLServer2016配置管理器,用来开启SQLServer网络配置,启用实例TCP/IP协议和NamePiPe。Windows10:要打开SQLServer配置管理器,请在“起始页”中键入SQLServerManager13.msc(适用于SQLServer2016)...
数据库操作教程 2022-09-23 18:20:58 -
详解SQLServer如何修改数据库物理文件的存在位置
前言大家应该都知道SQLServer创建新库时,默认会把数据存放在C盘中,一旦数据库中的存储数据多了以后,C盘的空间就会所剩无几。解决方案是将存放数据的物理文件迁移到其他盘...
数据库操作教程 2022-09-23 18:20:55 -
SQLServer中关于基数估计计算预估行数的一些方法探讨
关于SQLServer2014中的基数估计,官方文档OptimizingYourQueryPlanswiththeSQLServer2014CardinalityEstimator里有大量细节介绍,但是全部是英文,估计也没有几个人仔细阅读。那么SQLServer2014中基数估计的预估行数到底是怎么计算的呢?有哪一些规律呢?我们下面通过一些例子来初略了解一下,下面测试案例仅供参考,如有不足或肤浅的地方,敬请指教!下面实验测试的环境主要为SQLServer2014SP2(StandardEdition(64-bit))具体版本号为12.0.5000.0,如有在其它版本测试,后面会做具体说明...
数据库操作教程 2022-09-23 18:20:51 -
SqlServer存储过程调用存储过程接收输出参数返回值
创建存储过程:ALTERPROCEDURE[dbo].[GetCustomers](@rowcountINTOUTPUT)ASSELECT[CustomerID],[CompanyName],[ContactName],[ContactTitle],[Address],[City],[Region],[PostalCode],[Country],[Phone],[Fax]FROM[Northwind].[dbo].[Customers]SET@rowcount=@@rowcount接收输出参数:DECLARE@countINTEXECUTEGetCustomers@countOUTPUTPRINT@count2,带返回值创建存储过程:ALTERPROCEDURE[dbo].[GetCustomers]ASSELECT[CustomerID],[CompanyName],[ContactName],[ContactTitle],[Address],[City],[Region],[PostalCode],[Country],[Phone],[Fax]FROM[Northwind].[db...
数据库操作教程 2022-09-23 18:20:39 -
Sqlserver事务备份和还原的实例代码(必看)
废话不多说,直接上代码createdatabasemydbusemydbgocreatetableaccount(idvarchar(16),namevarchar(16),balancefloat)goselect*fromaccountinsertintoaccount(id,name,balance)values('620101','liyong',300)insertintoaccount(id,name,balance)values('620106','mali',400)--insertintoaccount(id,name,balance)values('620009','chenying',800)insertintoaccount(id,name,balance)values('646009','chenying',800)--deletefromaccountwhereid='620009'goupdateaccountsetbalance=balance-1000whereid='620101'updateaccountsetbalance=balance+100...
数据库操作教程 2022-09-23 18:20:38 -
SqlServer数据库各版本功能对比
背景今天举办的DataAmp大会上,微软向开发者们强调了数据如何影响他们的应用和服务,顺道还宣布了几个小新闻。这个免费的线上研讨会不仅展示了未来的机器学习远景,还发布了SQLServer2017、推出了面部认知服务API和Azure分析服务...
数据库操作教程 2022-09-23 18:20:36 -
分享一下SQLServer执行动态SQL的正确方式
SQLServer执行动态SQL的话,应该如何实现呢?下面就为您介绍SQLServer执行动态SQL两种正确方式,希望可以让您对SQLServer执行动态SQL有更深的了解动态SQL:codethatisexecuteddynamically.它一般是根据用户输入或外部条件动态组合的SQL语句块.动态SQL能灵活的发挥SQL强大的功能、方便的解决一些其它方法难以解决的问题.相信使用过动态SQL的人都能体会到它带来的便利,然而动态SQL有时候在执行性能(效率)上面不如静态SQL,而且使用不恰当,往往会在安全方面存在隐患(SQL注入式攻击). 动态SQL可以通过EXECUTE或SP_EXECUTESQL这两种方式来执行. EXECUTE 执行Transact-SQL批中的命令字符串、字符串或执行下列模块之一:系统存储过程、用户定义存储过程、标量值用户定义函数或扩展存储过程.SQLServer2005扩展了EXECUTE语句,以使其可用于向链接服务器发送传递命令.此外,还可以显式设置执行字符串或命令的上下文 SP_EXECUTESQL 执行可以多次重复使用或动态生成的Tra...
数据库操作教程 2022-09-23 18:20:34