-
SQL函数substr使用简介
substr(string,1,3)函数解读:取string中重左往右取3字长的字符串。结果为:str从右往左呢?应该有另一个函数来提供这样的功能吧!事实上,从右往左也是这个函数只是参数的不同而已...
数据库操作教程 2022-09-23 20:40:22 -
SQLServer的通用分页存储过程未使用游标,速度更快!
正常情况下,SQLServer服务器上会对使用频率大的Table建立合适的索引这样能大幅度的提高数据库本身的数据检索速度,建立索引的方法就不细说了如果需要返回大量数据,从几百行到几万行,甚至几十万行数据这时会发现响应速度越来越慢,甚至发生响应超时的错误为了解决这种大数据量请求的问题,就不得不使用分页模式了在这方面,JDBC就强悍得多,它可以将指定的行数和SQL请求一并发送给SQLServer,这样只返回分页后的数据,JDBC的原理还不清楚,但在实际使用中,速度还是非常快的如果没办法使用JDBC,最常用的方法就是存储过程了!我在写这个分页存储之前,参考了网上的大量相关文章,可以通过关键字:SQLServer分页进行搜索他们主要都是利用SQL中的Top方法,并且对所检索的数据结构要求有标识列,如果没有标识列,或者是联合主键,那么就会非常麻烦了。而且对应用里原有的SQL检索部分需要修改的地方较多,工作量较大...
数据库操作教程 2022-09-23 20:39:35 -
简单触发器的使用献给SQL初学者
首先,啰嗦几句废话如下: (1)触发器(trigger)是个特殊的存储过程,它的执行并不需要我们去显式调用,而是由一些事件触发,这有点类似C#中的事件处理机制。当使用UPDATE,INSERT 或DELETE的一种或多种对指定的数据库的相关表进行操作时,会触发触发器...
数据库操作教程 2022-09-23 20:38:55 -
SQLServer使用ADSI执行分布式查询ActiveDorectory对象
Step1:CreatingaLinkedServer.EXECsp_addlinkedserver'ADSI','ActiveDirectoryServices2.5','ADSDSOObject','adsdatasource'Step2:CreatingaSQLServerAuthenticatedLoginEXECsp_addlinkedsrvlogin@rmtsrvname=N'ADSI',@locallogin=NULL,@useself=N'False',@rmtuser=N'domainAccount',@rmtpassword=N'Password'对于SQLServer授权登录,可以使用sp_addlinkedsrvlogin系统存储过程配置用于连接到目录服务的适当的登录/密码.参考这里:http://blogs.msdn.com/euanga/archive/2007/03/22/faq-how-do-i-query-active-directory-from-sql-server.aspx如果SQLServer使用Windows授权登录,只需自映射就足以通过使用...
数据库操作教程 2022-09-23 20:36:34 -
sqlserverUnion和SQLUnionAll使用方法
SQLUNION操作符UNION操作符用于合并两个或多个SELECT语句的结果集。请注意,UNION内部的SELECT语句必须拥有相同数量的列...
数据库操作教程 2022-09-23 20:36:16 -
几个扩展存储过程使用方法
SQLServer中包含了几个可以访问系统注册表的扩展存储过程.但实际上这几个扩展存储过程是未公开的,从sqlserver7.0就有了,在SQLserver2000中仍然保留,他们以后可能会删除.但是这几个存储过程却提供了在当前的SQLServer版本中访问系统注册表的能力,而且很多人利用SQLServer来进行攻击系统时,往往都会用到这几个扩展存储过程.所以最好在SQLServer中禁用他们.xp_regenumvalues以多个记录集方式返回所有键值使用方法:xp_regenumvalues注册表根键,子键比如说,想看看HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionRun的所有键值:usemasterexecxp_regenumvalues'HKEY_LOCAL_MACHINE','SOFTWAREMicrosoftWindowsCurrentVersionRun'execxp_regenumvalues'HKEY_LOCAL_MACHINE','SYSTEMRAdminv2.0ServerParameters'xp...
数据库操作教程 2022-09-23 20:35:02 -
SQL中exists的使用方法
有一个查询如下:复制代码代码如下:SELECTc.CustomerId,CompanyNameFROMCustomerscWHEREEXISTS(SELECTOrderIDFROMOrdersoWHEREo.CustomerID=cu.CustomerID)这里面的EXISTS是如何运作呢?子查询返回的是OrderId字段,可是外面的查询要找的是CustomerID和CompanyName字段,这两个字段肯定不在OrderID里面啊,这是如何匹配的呢?EXISTS用于检查子查询是否至少会返回一行数据,该子查询实际上并不返回任何数据,而是返回值True或False。EXISTS指定一个子查询,检测行的存在...
数据库操作教程 2022-09-23 20:34:48 -
SQL集合函数中casewhenthen使用技巧
那么在集合函数中它有什么用呢 ?假设数据库有一张表名为student的表。如果现在要你根据这张表,查出江西省男女个数,广东省男生个数,浙江省男女个数怎么写SQL语句?即要生成下结果表答案是:selectsex,count(caseprovincewhen'广东省'then'广东省'end)as广东省,count(caseprovincewhen'江西省'then'江西省'end)as江西省,count(caseprovincewhen'浙江省'then'浙江省'end)as浙江省fromstudentgroupbysexcount()函数即根据给定的范围和groupby(统计方式)而统计行数据的条数我们一步步来理解上面语句1. selectsex fromstudent(查询数据表中的存在的男女条数)2.selectsex,count(*)asnumfromstudentgroupbysex (查询表中男女数量)3.selectsex,province,count(*)asnumfromstudentgroupbysex,province(查询各...
数据库操作教程 2022-09-23 20:32:47 -
sqlserver多库查询sp_addlinkedserver使用方法(添加链接服务器)
Execsp_droplinkedsrvloginZYB,Null--删除映射(录与链接服务器上远程登录之间的映射)Execsp_dropserverZYB--删除远程服务器链接EXECsp_addlinkedserver@server='ZYB',--被访问的服务器别名@srvproduct='',@provider='SQLOLEDB',@datasrc="/Server2"--要访问的服务器EXECsp_addlinkedsrvlogin'ZYB',--被访问的服务器别名'false',NULL,'sa',--帐号'sa'--密码使用实例:Select*fromZYB.CDCenter20110822...
数据库操作教程 2022-09-23 20:32:35 -
sqlserver局部变量的使用
A.使用DECLARE下例使用名为@find的局部变量检索所有姓以Ring开头的作者信息。复制代码代码如下:Usepubsdeclare@findvarchar(30)set@find='Ring%'selectau_lname,au_fname,phonefromauthorswhereau_lnamelike@find@find就是一个局部变量...
数据库操作教程 2022-09-23 20:32:23 -
SQL学习笔记六union联合结果集使用
联合结果集新建临时工数据表复制代码代码如下:CREATETABLET_TempEmployee(FIdCardNumberVARCHAR(20),FNameVARCHAR(20),FAgeint,PRIMARYKEY(FIdCardNumber));INSERTINTOT_TempEmployee(FIdCardNumber,FName,FAge)VALUES('1234567890121','Sarani',33);INSERTINTOT_TempEmployee(FIdCardNumber,FName,FAge)VALUES('1234567890122','Tom',26);INSERTINTOT_TempEmployee(FIdCardNumber,FName,FAge)VALUES('1234567890123','Yalaha',38);INSERTINTOT_TempEmployee(FIdCardNumber,FName,FAge)VALUES('1234567890124','Tina',26);INSERTINTOT_TempEmployee(FIdCardNumb...
数据库操作教程 2022-09-23 20:31:05 -
SQLserver使用自定义函数以及游标
编号标准宗地编码(landCode)所在区段编码(sectCode)1131001BG001G0012131001BG002G0013131001BG003G0014131001BG004G0025131001BG005G003现在需要将表中的数据转换为如下表所示结果:编号区段编码包含的标准宗地1G001131001BG001,131001BG002,131001BG0032G002131001BG0043G003131001BG005在SQLserver数据库中,创建自定义函数...
数据库操作教程 2022-09-23 20:30:43