-
如何在SQLServer2014中用资源调控器压制你的存储?
在今天的文章里,我想谈下SQLServer2014里非常酷的提升:现在你终于可以根据需要的IOPS来压制查询!资源调控器(ResourceGovernor)自SQLServer2008起引入,但提供的功能还是有所限制:你只能限制CPU时间(这个已经很棒了),还有你能限制查询(从每个独立的查询)内存量。但作为DBA的你,你经常会进行一些数据库维护操作,例如索引重建,DBCCCHECKDB操作等...
数据库操作教程 2022-09-23 17:43:13 -
SQLServer存储过程中使用表值作为输入参数示例
在2008之前如果我们想要将表作为输入参数传递给SQLServer存储过程使比较困难的,可能需要很多的逻辑处理将这些表数据作为字符串或者XML传入。在2008中提供了表值参数...
数据库操作教程 2022-09-23 17:40:50 -
SQLServer中NULL的正确使用与空间占用
我们常在SQLServer的使用或维护中遇上NULL,那么什么是NULL?如下是MSDN给出的一段简短描述(见“NullValues”):AvalueofNULLindicatesthatthevalueisunknown.AvalueofNULLisdifferentfromanemptyorzerovalue.Notwonullvaluesareequal.Comparisonsbetweentwonullvalues,orbetweenaNULLandanyothervalue,returnunknownbecausethevalueofeachNULLisunknown.通俗的讲,NULL就是一个值,而且这个值是未知的(unknown);NULL不能等价任何值,甚至都不等价它自己,即NULL不等于NULL。为了清晰的理解上述的内容,我们创建一个测试表Test_NULL,然后对表插入2条含有NULL值的记录,并进行相关验证操作:--创建一张允许NULL值的表CREATETABLETest_NULL(numINTNOTNULLPRIMARYKEY,fnameNVARCHAR(50)...
数据库操作教程 2022-09-23 17:40:36 -
使用NotePad++录制宏功能如何快速将sql搜索条件加上前后单引号
當我們有很多筆的條件要對資料庫進行搜尋時,常常會用到下列的語法SELECT*FROMMemberWHEREaccuntin('Tom','John','May')在上述語法IN的搜尋條件中,有Tom、John、May三個帳號條件,資料量少的話,還可以一筆一筆的在帳號的前後加上單引號及後面加上逗號,可是當你遇到要一次查詢50個帳號的情況,一筆一筆的輸入,應該會耗費不少時間。以前我都會用Excel裡的CONCATENATE函式來處理這樣的資料,但是有一天同事教我可以用NotePad++的巨集功能來完成這件事情我覺得這方式比在Excel處理還快速,所以在這裡分享一下1.將要處理的搜尋條件貼到NotePad++,以下圖來看,有25筆(圖中的英文名字是從google隨機搜尋到的清單)2.因為巨集就是將你的操作紀錄下來,所以先將游標移到第一筆資料的開始位置,然後按下NotePad++工具列上的巨集按鈕,開始錄製3.因為游標已經在最開頭,也就是第一筆資料的位置,所以請直接用鍵盤,按照下面的鍵盤按鍵順序進行輸入(下方括號中的都是鍵盤的按鍵喔)「'」→「End」→「'」→「,」→「↓」→「H...
数据库操作教程 2022-09-23 17:39:42 -
SQL语句实现查询SQLServer内存使用状况
SELECTtype,--Clerk的类型sum(virtual_memory_reserved_kb)asvm_Reserved_kb,--保留的内存sum(virtual_memory_committed_kb)asvm_Committed_kb,--提交的内存sum(awe_allocated_kb)asawe_Allocated_kb,--开启AWE后使用的内存sum(shared_memory_reserved_kb)assm_Reserved_kb,--共享的保留内存sum(shared_memory_committed_kb)assm_Committed_kb,--共享的提交内存sum(single_pages_kb)asSinlgePage_kb,--BufferPool中的Stolen的内存sum(multi_pages_kb)asMultiPage_kb--MemToLeave的内存FROMsys.dm_os_memory_clerksGROUPBYtypeORDERBYtype--查询BufferPool/MemoryToLeaveSELECTsum(virtua...
数据库操作教程 2022-09-23 17:37:58 -
SqlServer使用cursor处理重复数据过程详解
/*************************************************************Codeformattedbysetyg*Time:2014/7/2910:04:44************************************************************/CREATEPROCHandleEmailRepeatASDECLAREemailCURSORFORSELECTe.email,e...
数据库操作教程 2022-09-23 17:37:54 -
SQLServer中使用sp_password重置SA密码实例
SQL2000的SA密码不能更改的解决方法,在更改sa的密码出现下面的错误:复制代码代码如下:Error21776:[SQL-DMO]Thename‘dbo'wasnotfoundintheUserscollection.Ifthenameisaqualifiedname,use[]toseparatevariouspartsofthename,andtryagain.解决方法:用SQl带的查询管理器连接到sql上,执行:复制代码代码如下:EXECsp_passwordNULL,‘XXXXXX',‘sa'关于Sp_password具体信息如下:sp_password添加或更改Microsoft?SQLServer?登录的密码。语法sp_password[][@old=]‘old_password',]{[@new=]‘new_password'}[,][@loginame=]‘login']参数[@old=]‘old_password'是旧密码...
数据库操作教程 2022-09-23 17:37:53 -
SQLServer中使用Trigger监控存储过程更改脚本实例
下面的Trigger用于监控存储过程的更改。 创建监控表: CREATETABLEAuditStoredProcedures(DatabaseNamesysname,ObjectNamesysname,LoginNamesysname,ChangeDatedatetime,EventTypesysname,EventDataXmlxml);创建监控Trigger:CREATETRIGGERdbtAuditStoredProceduresONDATABASEFORCREATE_PROCEDURE,ALTER_PROCEDURE,DROP_PROCEDUREASDECLARE@eventdataXML;SET@eventdata=EVENTDATA();INSERTINTOAuditStoredProcedures(DatabaseName,ObjectName,LoginName,ChangeDate,EventType,EventDataXml)VALUES(@eventdata.value('(/EVENT_INSTANCE/DatabaseName)[1]','...
数据库操作教程 2022-09-23 17:37:50 -
SQLServer中PartitionBy及row_number函数使用详解
partition by关键字是分析性函数的一部分,它和聚合函数不同的地方在于它能返回一个分组中的多条记录,而聚合函数一般只有一条反映统计值的记录,partition by用于给结果集分组,如果没有指定那么它把整个结果集作为一个分组。今天群里看到一个问题,在这里概述下:查询出不同分类下的最新记录...
数据库操作教程 2022-09-23 17:37:26 -
SQLSERVER使用REPLACE将某一列字段中的某个值替换为其他的值
SQLSERVER将某一列字段中的某个值替换为其他的值update表名set列名=REPLACE(列名,'aa'...
数据库操作教程 2022-09-23 17:35:47 -
freetds简介、安装、配置及使用介绍
什么是FreeTDS 简单的说FreeTDS是一个程序库,可以实现在Linux系统下访问微软的SQL数据库!FreeTDS是一个开源(如果你喜欢可以称为自由)的程序库,是TDS(表列数据流)协议的再次实现。它可以被用在Sybase的db-lib或者ct-lib库...
数据库操作教程 2022-09-23 17:35:21 -
SqlLoader怎么使用
SQL*Loader(SQLLDR)是Oracle的高速批量数据加载工具。这是一个非常有用的工具,可用于多种平面文件格式向Oralce数据库中加载数据...
数据库操作教程 2022-09-23 17:35:16