-
在数据库‘master’中拒绝CREATEDATABASE权限问题的解决方法
复制代码代码如下:publicpartialclassCMS_DBDataContext{partialvoidOnCreated(){//如果数据库不存在则创建数据库if(!this.DatabaseExists()){this.CreateDatabase();}}}遇到了以下错误:在数据库‘master'中拒绝CREATEDATABASE权限。经查阅资料得知,运行SQLServer数据库,就必须在实例下创建数据库,不管是直接创建、还是附加、还是还原,总之都得在实例下创建...
数据库操作教程 2022-09-23 20:39:32 -
SQL入侵恢复xp_cmdshell方法总结
1433SQL入侵恢复xp_cmdshell方法总结sqlserver2005下开启xp_cmdshell的办法EXECsp_configure'showadvancedoptions',1;RECONFIGURE;EXECsp_configure'xp_cmdshell',1;RECONFIGURE;SQL2005开启'OPENROWSET'支持的方法:execsp_configure'showadvancedoptions',1;RECONFIGURE;execsp_configure'AdHocDistributedQueries',1;RECONFIGURE;SQL2005开启'sp_oacreate'支持的方法:execsp_configure'showadvancedoptions',1;RECONFIGURE;execsp_configure'OleAutomationProcedures',1;RECONFIGURE;突破SA的各种困难常见情况恢复执行xp_cmdshell1未能找到存储过程'master..xpcmdshell'.恢复方法:查询分离器连接后,第一步执行...
数据库操作教程 2022-09-23 20:38:52 -
SQLSERVERPagerstoreprocedure分页存储过程
复制代码代码如下:SETANSI_NULLSONGOSETQUOTED_IDENTIFIERONGOCREATEPROCEDURE[dbo].[Pagination]@Pageint=1,--当前页码@PageSizeint=10,--每页记录条数(页面大小)@Tablenvarchar(500),--表名或视图名,甚至可以是嵌套SQL:(Select*FromTabWhereID>1000)Tab@Fieldnvarchar(800)='*',--返回记录集字段名,","隔开,默认是"*"@OrderBynvarchar(100)='IDASC',--排序规则@Filternvarchar(500),--过滤条件@MaxPagesmallintoutput,--执行结果-1error,0false,maxpagetrue@TotalRowintoutput,--记录总数/*2007-07-1222:11:00update*/@Descriptvarchar(100)output--结果描述ASBEGIN--====================================...
数据库操作教程 2022-09-23 20:38:28 -
Sqlfunction多行中的列合并为一行一列的方法
复制代码代码如下:CREATETABLEtb(standardsvarchar(50),amountvarchar(50),variationvarchar(50),statussvarchar(50),Reasonvarchar(50))insertintotbvalues('55','279','4','物量积压','加工人员设备不足;T排制作进度较慢;')insertintotbvalues('55','279','4','物量积压','部件人员不足;')insertintotbvalues('55','279','4','物量积压','跨间场地积压;图纸问题较多;')insertintotbvalues('56','300','4','物量积压','AAAA;')insertintotbvalues('56','300','4','物量积压','BBBB;')insertintotbvalues('56','300','4','物量积压','CCCC;')createfunctiontest(@standardsvarchar(100))returnsvarchar(8000)...
数据库操作教程 2022-09-23 20:37:32 -
SQL中WHERE变量ISNULL条件导致全表扫描问题的解决方法
复制代码代码如下:SET@SQL='SELECT*FROMCommentwith(nolock)WHERE1=1 And(@ProjectIdsIsNullorProjectId=@ProjectIds) And(@ScoresisnullorScore=@Scores)'印象中记得,以前在做Oracle开发时,这种写法是会导致全表扫描的,用不上索引,不知道SqlServer里是否也是一样呢,于是做一个简单的测试1、建立测试用的表结构和索引:复制代码代码如下:CREATETABLEaaa(idintIDENTITY,NAMEVARCHAR(12),ageINT)goCREATEINDEXidx_ageONaaa(age)GO2、插入1万条测试数据:复制代码代码如下:DECLARE@iINT;SET@i=0;WHILE@i<10000BEGIN INSERTINTOaaa(name,age)VALUES(CAST(@iASVARCHAR),@i) SET@i=@i+1;ENDGO3、先开启执行计...
数据库操作教程 2022-09-23 20:36:43 -
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 -
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 -
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 -
distinct多列问题结合groupby的解决方法
表table1idRegNamePostionSNPersonSN1山东齐鲁制药22322山东齐鲁制药22423北京城建公司22524科技公司2252我想获得结果是idRegNamePostionSNPersonSN1山东齐鲁制药22323北京城建公司22524科技公司2252selectdistinctRegName,PostionSN...
数据库操作教程 2022-09-23 20:28:42 -
Sqlserver中char,nchar,varchar与Nvarchar的区别分析
1.char类型:对英文(ASCII)字符占用1个字节,对一个汉字占用2个字节,CHAR存储定长数据很方便,CHAR字段上的索引效率极高,比如定义char(10),那么不论你存储的数据是否达 到了10个字节,都要占去10个字节的空间。因为是固定长度,所以速度效率高...
数据库操作教程 2022-09-23 20:26:39