-
ASP.NET和MSSQL高性能分页实例代码
首先是存储过程,只取出我需要的那段数据,如果页数超过数据总数,自动返回最后一页的纪录:setANSI_NULLSONsetQUOTED_IDENTIFIERONGO--=============================================--Author:Clear--Description:高性能分页--http://www.cnblogs...
数据库操作教程 2022-09-23 17:34:41 -
sqlservernotin语句使程充崩溃
两张表组织架构表(Organise)和工资发放历史记录表(WagePerMonthHis)两张表通过Organise.Item_id和WagePerMonthHis...
数据库操作教程 2022-09-23 17:32:35 -
揭秘SQLServer2014有哪些新特性(2)-固态硬盘BufferPool(缓冲池)扩展
简介 SQLServer2014中另一个非常好的功能是,可以将SSD虚拟成内存的一部分,来供SQLServer数据页缓冲区使用。通过使用SSD来扩展Buffer-Pool,可以使得大量随机的IOPS由SSD来承载,从而大量减少对于数据页的随机IOPS和PAGE-OUT...
数据库操作教程 2022-09-23 17:31:36 -
EXEC(EXECUTE)函数访问INSERTED或DELETED的内部临时触发表
刚开始时,这个表的字段很少(10个以内),前开发者把这个表的所有存储过程与触发器以及表函数全是写死了。用户每添加一些字段,都需要手动去更改这些存储过程与触发器以及表函数...
数据库操作教程 2022-09-23 17:30:05 -
sp_executesql使用复杂的Unicode表达式错误的解决方法
Msg102,Level15,State1,Line3Incorrectsyntaxnear'+'.当你尝试执行下面这段代码时,会得到如上这个错误提示。复制代码代码如下:DECLARE@MyNameNVARCHAR(100)DECLARE@FieldNameSYSNAME=N'Name'EXECUTEsp_executesqlN'SELECTTOP1@OutputName=['+@FieldName+']FROM[dbo].[Member]',N'@OutputNameNVARCHAR(100)OUTPUT',@MyNameOUTPUT;SELECT@MyName问题出于不允许使用更复杂的Unicode表达式(例如使用+运算符连接两个字符串)...
数据库操作教程 2022-09-23 17:28:34 -
实例学习SQL的Select命令
-1、查找员工的编号、姓名、部门和出生日期,如果出生日期为空值,--显示日期不详,并按部门排序输出,日期格式为yyyy-mm-dd。select emp_no ,emp_name ,dept ,isnull(convert(char(10),birthday,120),'日期不详') birthdayfrom employeeorder by dept --2、查找与喻自强在同一个单位的员工姓名、性别、部门和职称select emp_no,emp_name,dept,titlefrom employeewhere emp_name<>'喻自强' and dept in(select dept from employeewhere emp_name='喻自强')--3、按部门进行汇总,统计每个部门的总工资select dept,sum(salary)from emplo...
数据库操作教程 2022-09-23 17:27:21 -
SQLServerExecpt和notin性能区别
主要讲except和notin的性能上的区别。复制代码代码如下:CREATETABLEtb1(IDint)CREATETABLEtb2(IDint)BEGINTRANDECLARE@iINT=500WHILE@i>0beginINSERTINTOdbo.tb1VALUES(@i--v-int)SET@i=@i-1endCOMMIT我测试的时候tb1是1000,tb2是500复制代码代码如下:DBCCFREESYSTEMCACHE('ALL','default');SETSTATISTICSIOONSETSTATISTICSTIMEonSELECT*FROMtb1EXCEPTSELECT*FROMtb2;SELECT*FROMtb1WHEREidNOTIN(SELECTidFROMtb2);--得不到任何值SETSTATISTICSIOOFFSETSTATISTICSTIMEOFF执行计划:复制代码代码如下:SELECT*FROMtb1EXCEPTSELECT*FROMtb2;|--MergeJoin(RightAntiSemiJoin,MERGE:([master1].[dbo]...
数据库操作教程 2022-09-23 17:26:30 -
解决无法在unicode和非unicode字符串数据类型之间转换的方法详解
今天用excel导入数据又遇到了…… 错误0xc02020f6:数据流任务:列“column”无法在unicode和非unicode字符串数据类型之间转换。 原因:仔细看了一下,发现有些字段是varchar的,而excel中估计都是nvarchar类型...
数据库操作教程 2022-09-23 17:26:22 -
insertselect与selectinto的用法使用说明
insertinto(列名)select列名from表名where条件--不创建表,只复制表数据select列名into表名(这个表名是不存在的)from表名where条件,--创建一张新表,只复制选择的列名字段数据Insert是T-sql中常用语句,InsertINTOtable(field1,field2,...)values(value1,value2,...)这种形式的在应用程序开发中必不可少。但我们在开发、测试过程中,经常会遇到需要表复制的情况,如将一个table1的数据的部分字段复制到table2中,或者将整个table1复制到table2中,这时候我们就要使用SELECTINTO和INSERTINTOSELECT表复制语句了...
数据库操作教程 2022-09-23 17:25:36 -
sqlserver中Selectcount(*)和Count(1)的区别和执行方式
在SQLServer中Count(*)或者Count(1)或者Count([列])或许是最常用的聚合函数。很多人其实对这三者之间是区分不清的...
数据库操作教程 2022-09-23 17:25:26 -
SQL事务用法begintran,committran和rollbacktran的用法
具体用法如下:复制代码代码如下:--=============================================--Author:cynimoon--Createdate:2009-10-09--Description:示例存储过程--=============================================--EXECTEST_PROC'文综','包括历史,地理,政治','政治','文综的一门'CREATEPROCEDURE[dbo].[TEST_PROC]@A_NameNVARCHAR(20),--A表姓名@A_RemarkNVARCHAR(4000),--A表备注@B_NameNVARCHAR(20),--B表姓名@B_RemarkNVARCHAR(4000)--B表备注ASBEGINTRYBEGINTRAN--在A表中插入数据INSERTINTO[dbo].[A]([A_Name],[A_Remark])VALUES(@A_Name,@A_Remark)--在B表中插入数据INSERTINTO[dbo].[B]([A_ID],[B_Name],[B...
数据库操作教程 2022-09-23 17:25:24 -
深入SQLSERVER合并相关操作Union,Except,Intersect的详解
对于结果集有几个处理,值得讲解一下1.并集(union,Unionall)这个很简单,是把两个结果集水平合并起来。例如SELECT*FROMAUNIONSELECT*FROMB【注意】union会删除重复值,也就是说A和B中重复的行,最终只会出现一次,而unionall则会保留重复行...
数据库操作教程 2022-09-23 17:25:01