-
SQLServer中的SQL语句优化与效率问题
很多人不知道SQL语句在SQLSERVER中是如何执行的,他们担心自己所写的SQL语句会被SQLSERVER误解。比如:select*fromtable1wherename='zhangsan'andtID>10000和执行:select*fromtable1wheretID>10000andname='zhangsan'一些人不知道以上两条语句的执行效率是否一样,因为如果简单的从语句先后上看,这两个语句的确是不一样,如果tID是一个聚合索引,那么后一句仅仅从表的10000条以后的记录中查找就行了;而前一句则要先从全表中查找看有几个name='zhangsan'的,而后再根据限制条件条件tID>10000来提出查询结果...
数据库操作教程 2022-09-23 18:02:04 -
获取SQLServer2014的安装时间
如果你没有特意记录安装日期(实际大部分人都不会这样做),那么有没有办法从SQLServer里查询到呢?想想我们在安装的时候,肯定会有Windows认证登录账号的创建信息,我们可以通过查询它来确定安装日期。查询的T-SQL如下:SELECT*FROMSYS.SERVER_PRINCIPALS其输出的结果如下:从结果中,我们可以看到create_date这一栏,比如通过name为NTAUTHORITYSYSTEM的登录账号的创建日期,就知道SQLServer的安装日期了...
数据库操作教程 2022-09-23 18:01:59 -
SQLServer向临时表插入数据示例
复制代码代码如下:INSERTINTO#DirtyOldWIPBOMSELECTTOP(100)PERCENTdbo.WIP_BOM.Model,dbo.WIP_BOM.PartNumber,WIP_BOM.WIPFROMdbo.WIP_BOMleftOUTERJOINdbo.BOM_CHINAONLTRIM(dbo.WIP_BOM.Model)=LTRIM(dbo.BOM_CHINA.Model)ANDLTRIM(dbo.WIP_BOM.PartNumber)=LTRIM(dbo.BOM_CHINA.PartNumber)ANDdbo.WIP_BOM.Qty=dbo.BOM_CHINA.QtyANDBOM_CHINA.WIP=WIP_BOM.WIPWHERE(dbo.BOM_CHINA.ModelISNULL)ANDEXISTS(SELECT*FROMdbo.BOM_CHINAWHEREWIP=WIP_BOM.WIPANDLTRIM(Model)=LTRIM(WIP_BOM.Model))这样就可以成功。复制代码代码如下:但SELECTTOP(100)PERCENTdbo.WIP_B...
数据库操作教程 2022-09-23 18:01:56 -
SQLServer存储过程实现单条件分页
话不多说,请看代码:SQLServerProcedurePagination_basic:ALTERPROCEDURE[qiancheng].[Pagination_basic](@Table_nameVARCHAR(255),--nameoftable@Rows_targetVARCHAR(1000)='*',--searchrows@Rows_conditionVARCHAR(1000)='',--theconditiontofindtarget(nowhere)@Rows_orderVARCHAR(255)='',--therowstorank@Order_typeINT=0,--*Q*C*0normal1down@PageSizesINT=10,--thesizeofeachpage@PageIndexINT=1,--currentpage@ShowPagesINT,--whethershowthepages*Q*C*1-yes0-no@ShowRecordsINT,--whethershowtherecord*Q*C*1-yes0-no@Records_totalINTOUT...
数据库操作教程 2022-09-23 18:01:54 -
SQLServer触发器和事务用法示例
本文实例讲述了SQLServer触发器和事务用法。分享给大家供大家参考,具体如下:新增和删除触发器altertriggertri_TCont_cforINSERT,deleteasbeginsetXACT_ABORTONdeclare@INSERTCOUNTint;declare@DELETECOUNTint;declare@UPDATECOUNTint;set@INSERTCOUNT=(selectCOUNT(*)frominserted);set@DELETECOUNT=(selectCOUNT(*)fromdeleted);set@UPDATECOUNT=()if(@INSERTCOUNT>0)begininsertintot_c2select*frominserted;endelseif(@DELETECOUNT>0)begindeletet_c2whereexists(selecttemp.cidfromdeletedtempwheretemp.cid=t_c2.cid);endend更新触发器和事务事务主要用在数据的保护,在多表更新时,事务保存所有事务下的更新语...
数据库操作教程 2022-09-23 18:01:52 -
Activiti-Explorer使用sqlserver数据库实现方法
如何让Activiti-Explorer使用sqlserver数据库从官网下载的Activiti-explorer的war文件内部默认是使用h2内存数据库的,如果想改用其他的数据库来做持久化,比如sqlserver,需要做如下配置。1)修改db.properties文件路径:C:apache-tomcat-7.0.64webappsactiviti-explorerWEB-INFclassesdb.properties内容如下:db=mssqljdbc.driver=com.microsoft.sqlserver.jdbc.SQLServerDriverjdbc.url=jdbc:sqlserver://localhost:1433;databaseName=activitijdbc.username=sajdbc.password=xxxx2)从微软官网下载sqlserver的jdbc驱动;只要在搜索引擎上搜索关键词:sqlserverjdbcdriver找到微软官网的连接,我使用的是:https://msdn.microsoft.com/en-us/sqlserver/aa9377...
数据库操作教程 2022-09-23 18:01:32 -
SQLServer数据库分离与附加就这么简单!
一、概述SQLServer提供了“分离/附加”数据库、“备份/还原”数据库、复制数据库等多种数据库的备份和恢复方法。这里介绍一种学习中常用的“分离/附加”方法,类似于大家熟悉的“文件拷贝”方法,即把数据库文件(.MDF)和对应的日志文件(.LDF)拷贝到其它磁盘上作备份,然后把这两个文件再拷贝到任何需要这个数据库的系统之中...
数据库操作教程 2022-09-23 18:01:25 -
SQLServer树形表非循环递归查询的实例详解
很多人可能想要查询整个树形表关联的内容都会通过循环递归来查...事实上在微软在SQL2005或以上版本就能用别的语法进行查询,下面是示例。--通过子节点查询父节点WITHTREEAS(SELECT*FROMAreasWHEREid=6--要查询的子idUNIONALLSELECTAreas.*FROMAreas,TREEWHERETREE.PId=Areas.Id)SELECTAreaFROMTREE--通过父节点查询子节点WITHTREEAS(SELECT*FROMAreasWHEREid=7--要查询的子idUNIONALLSELECTAreas.*FROMAreas,TREEWHERETREE.Id=Areas.PId)SELECTAreaFROMTREE通过子节点查询父节点查询结果为:修改代码为--通过子节点查询父节点declare@areavarchar(8000);WITHTREEAS(SELECT*FROMAreasWHEREid=6--要查询的子idUNIONALLSELECTAreas.*FROMAreas,TREEWHERETREE.PId=Areas.Id)sel...
数据库操作教程 2022-09-23 18:01:19 -
sqlserver禁止managementstudio的自动提交事务
自动提交事务默认managementstudio是自动提交事务,即一个语句就一个事务。隐式事务打开SqlServerManagermentStudio,登陆到实例当中...
数据库操作教程 2022-09-23 18:01:18 -
SQLserver表数据改变触发发送邮件的方法
今天遇到一个问题,原有生产系统正在健康运行,现需要监控一张数据表,当增加数据的时候,给管理员发送邮件。领到这个需求后,有同事提供方案:写触发器触发外部应用程序...
数据库操作教程 2022-09-23 18:00:59 -
通过使用正确的searcharguments来提高SQLServer数据库的性能
原文地址:http://www.sqlpassion.at/archive/2014/04/08/improving-query-performance-by-using-correct-search-arguments/今天的文章给大家谈谈在SQLServer上关于indexing的一个特定的性能问题。问题看看下面的简单的query语句,可能你已经在你看到过几百次了--ResultsinanIndexScanSELECT*FROMSales.SalesOrderHeaderWHEREYEAR(OrderDate)=2005ANDMONTH(OrderDate)=7GO上门的代码查询一个销售信息,需要一个特定的月份和年份的,这不是很复杂...
数据库操作教程 2022-09-23 18:00:56