-
SQL查询入门(上篇)推荐收藏
SQL语言是一门简单易学却又功能强大的语言,它能让你快速上手并写出比较复杂的查询语句。但对于大多数开发者来说,使用SQL查询数据库并没有一个抽象的过程和一个合理的步骤,这很可能会使在写一些特定的SQL查询语句来解决特定问题时被”卡”住,本系列文章主要讲述SQL查询时一些基本的理论,以及写查询语句的抽象思路...
数据库操作教程 2022-09-23 20:32:08 -
卸载VS2011DeveloperPreview后SqlServer2008R2建立数据库关系图报“找不到指定的模块”错误的解决方法
可怜我的C盘本来只有8.XG,所以不得不卸载掉它。卸载掉本身没啥问题,只是昨晚突然发现SqlServer2008R2ManagementStudio突然不能新建数据库关系图了,一建立就会报“找不到指定的模块(MSVisualDatabaseTools)”的错误:为了这个错误我甚至认真评估了重新配置数据库的可能性...
数据库操作教程 2022-09-23 20:31:51 -
sqlserver存储过程动态参数调用实现代码
只是做笔记,没什么!!复制代码代码如下:--创建测试表CREATETABLE[dbo].[Student]([ID][int]IDENTITY(1,1)NOTNULLPRIMARYKEY,[Name][nvarchar](20)NOTNULLDEFAULT(''),[Age][int]NOTNULLDEFAULT(0),[Sex][bit]NOTNULLDEFAULT(0),[Address][nvarchar](200)NOTNULLDEFAULT(''))--比如是一个查询存储过程CreatePROCGetStudentByType@typeint=0,--1根据id查询,2根据性别查询@argsXML--参数都写到这里吧ASBEGINDECLARE@idINT,@sexBITSET@id=@args...
数据库操作教程 2022-09-23 20:31:45 -
批量替换sqlserver数据库挂马字段并防范sql注入攻击的代码
首先备份数据库,以防不必要的损失。而后对所有被挂马的小于8000字符的varchar字段执行复制代码代码如下:update表名set字段名=replace(字段名,'<ScriptSrc=http://c.n%75clear3.com/css/c.js></Script>','')其中<ScriptSrc=http://c.n%75clear3.com/css/c.js></Script>为挂马字段...
数据库操作教程 2022-09-23 20:31:35 -
学习SQL语句(强大的groupby与selectfrom模式)
强大的groupby复制代码代码如下:selectstdname,isnull(sum(casestdsubjectwhen'化学'thenResultend),0)[化学],isnull(sum(casestdsubjectwhen'数学'thenResultend),0)[数学],isnull(sum(casestdsubjectwhen'物理'thenResultend),0)[物理],isnull(sum(casestdsubjectwhen'语文'thenResultend),0)[语文]from#studentgroupbystdnamegroupby与sum+case结合,可以将表1中的记录(行)变成表2的字段(列)。Sum里面如果没有case,那么出来的值,只能是全部科目的总和,用了case以后,就是某科的成绩;然后这里用了好几个sum,每个科目一个sum,于是表1中本来某人某科占一条记录的“行”就变成了表2里某人一条记录,每科做一个字段了利用selectfrom(selectfrom)的模式生成SQL语句复制代码代码如下:declare@sqlvarchar(4000...
数据库操作教程 2022-09-23 20:31:24 -
很有意思的SQL多行数据拼接
要实现的SQL查询很原始:要求从第一个表进行查询得到第二个表格式的数据,上网查询之后竟然能写出下面的SQL:复制代码代码如下:select*fromuserinoSELECT*FROM(SELECTDISTINCTuserpartFROMuserino)AOUTERAPPLY(SELECT[usernames]=replace(replace(replace((SELECTusernameasvalueFROMuserinoNWHEREuserpart=A.userpartorderbyn.usernameascFORXMLAUTO),'"/><Nvalue="','/'),'<Nvalue="',''),'"/>',''))NOUTERAPPLY(SELECT[username_cns]=replace(replace(replace((SELECTusername_cnasvalueFROMuserinoMWHEREuserpart=A.userpartorderbym.usernameascFORXMLAUTO),'"/><Mvalue="',...
数据库操作教程 2022-09-23 20:31:17 -
MSSQL批量替换语句在SQLSERVER中批量替换字符串的方法
方法一:(这种是最常用的,因为很多大段的内容都使用textntext等数据类型,而我们通常也是替换里面的内容)varchar和nvarchar类型是支持replace,所以如果你的text不超过8000可以先转换成前面两种类型再使用replace替换textntext数据类型字段的语句复制代码代码如下:update表名set字段名=replace(cast(与前面一样的字段名asvarchar(8000)),'原本内容','想要替换成什么')方法二:(替换其他数据类型字段的语句,实际应用中不常见)复制代码代码如下:update[表名]set字段名=replace(与前面一样的字段名,'原本内容','想要替换成什么')以下是补充:1。如何批量替换ntext字段里面的数据问题描述:我想把数据库中News表中的字段content中的一些字符批量替换...
数据库操作教程 2022-09-23 20:31:12 -
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 -
通过分析SQL语句的执行计划优化SQL
如何干预执行计划--使用hints提示基于代价的优化器是很聪明的,在绝大多数情况下它会选择正确的优化器,减轻了DBA的负担。但有时它也聪明反被聪明误,选择了很差的执行计划,使某个语句的执行变得奇慢无比...
数据库操作教程 2022-09-23 20:30:58 -
mssqlserver数据库附加不上解决办法分享
错误15105,从网上找了一些解决方案,一般都是说文件的权限不足的问题,当然附加的时候必须是有数据库附加权限才可以操作的。解决办法1:给相应的MDF文件给FullControl的权限,如果不知道是什么用户可以去SqlServer的配置中心去找但是我遇到这个用上述方法就不可以...
数据库操作教程 2022-09-23 20:30:55 -
SQLServer日志过大会影响查询结果
前几天发现网站的查询有点不正常,一般来说,会先查询出一级目录的内容,单击一级目录后会查询出二级目录……一直到查询到最下面的文件。可是这几天发现,查询速度很慢,而且,查询出来的也不是一级目录,而是直接显示最下面的文件,显示的数据量也有问题...
数据库操作教程 2022-09-23 20:30:50 -
SQLserver使用自定义函数以及游标
编号标准宗地编码(landCode)所在区段编码(sectCode)1131001BG001G0012131001BG002G0013131001BG003G0014131001BG004G0025131001BG005G003现在需要将表中的数据转换为如下表所示结果:编号区段编码包含的标准宗地1G001131001BG001,131001BG002,131001BG0032G002131001BG0043G003131001BG005在SQLserver数据库中,创建自定义函数...
数据库操作教程 2022-09-23 20:30:43