-
不同数据库之间导入导出功能介绍
1.在SQLServer数据库之间进行数据导入导出 (1).使用SELECTINTO导出数据 在SQLServer中使用最广泛的就是通过SELECTINTO语句导出数据,SELECTINTO语句同时具备两个功能:根据SELECT后跟的字段以及INTO后面跟的表名建立空表(如果SELECT后是*,空表的结构和FROM所指的表的结构相同);将SELECT查出的数据插入到这个空表中。在使用SELECTINTO语句时,INTO后跟的表必须在数据库不存在,否则出错,下面是一个使用SELECTINTO的例子...
数据库操作教程 2022-09-23 20:39:47 -
简单触发器的使用献给SQL初学者
首先,啰嗦几句废话如下: (1)触发器(trigger)是个特殊的存储过程,它的执行并不需要我们去显式调用,而是由一些事件触发,这有点类似C#中的事件处理机制。当使用UPDATE,INSERT 或DELETE的一种或多种对指定的数据库的相关表进行操作时,会触发触发器...
数据库操作教程 2022-09-23 20:38:55 -
sqlserver临时表Vs表变量详细介绍
这里我们在SQLServer2005SQLServer2008版本上通过举例子,说明临时表和表变量两者的一些特征,让我们对临时表和表变量有进一步的认识。在本章中,我们将从下面几个方面去进行描述,对其中的一些特征举例子说明:约束(Constraint)索引(Index)I/0开销作用域(scope)存儲位置其他 例子描述约束(Constraint) 在临时表和表变量,都可以创建Constraint...
数据库操作教程 2022-09-23 20:37:29 -
SQL语句练习实例之六人事系统中的缺勤(休假)统计
复制代码代码如下:---这是一个人事系统中的示例,要求记录一下员工的缺勤情况---1.要在表中记录一下缺勤计分,是对经常缺勤者的一种处罚性计分---规则:---1.如果员工在一年内的缺勤计分达到50,就会可以解雇该员工。---2.如果员工缺勤连续超过一天,就视为长病假,这时,第二天,第三天及以后的天数都不会统计该员工的缺勤计分----这些天也不算为缺勤...
数据库操作教程 2022-09-23 20:36:11 -
根据表名和索引获取需要的列名的存储过程
复制代码代码如下:createprocp_sword_getblcolumn(@tblNamevarchar(200),@fromIndexint,@toIndexint,@columnNamevarchar(3000)output)asbegindeclare@tempColumnvarchar(3000)declare@errMsgvarchar(200)declare@iintset@i=1set@columnName=''set@errMsg=''declaretempColumnCurcursorforselectsyscolumns.namefromsyscolumnsjoinsysobjectsonsyscolumns.id=sysobjects.idwheresysobjects.name=@tblNameorderbysyscolumns.colorderopentempColumnCurfetchnextfromtempColumnCurinto@tempColumnwhile@@FETCH_STATUS=0beginif(@fromIndex=0and@toInd...
数据库操作教程 2022-09-23 20:33:40 -
SQL语句一个简单的字符串分割函数
复制代码代码如下:CREATEFUNCTIONdbo.f_splitstr(@strvarchar(8000))RETURNS@rTABLE(idintIDENTITY(1,1),valuevarchar(5000))ASBEGIN/*Functionbody*/DECLARE@posintSET@pos=CHARINDEX(',',@str)WHILE@pos>0BEGININSERT@r(value)VALUES(LEFT(@str,@pos-1))SELECT@str=STUFF(@str,1,@pos,''),@pos=CHARINDEX(',',@str)ENDIF@str>''INSERT@r(value)VALUES(@str)RETURNENDselect*fromf_splitstr('中,国,人')...
数据库操作教程 2022-09-23 20:32:53 -
SQL语句练习实例之七剔除不需要的记录行
复制代码代码如下:--相信大家肯定经常会把数据导入到数据库中,但是可能会有些记录行的所有列的数据是null,这为null的数据是我们不需要--现在需要一个简单的查询来剔除掉这些为null的记录行。--假设表名为emplyees--方法1.---先把数据导入到数据库---其次:select*fromsys.columnswhereobject_id=(selectobject_idfromsys.objectswherename='EMPLYEEs')---方法2---使用数据库提供的函数execsp_columns'Employees'deletefromEmployeeswherecoalesce(status,tel,gwei,ADDRESS1,address2,nwei)isnull...
数据库操作教程 2022-09-23 20:30:03 -
SQLServerBulkInsert只需要部分字段时的方法
根据一般做法的话,导出部分字段时没有办法生成格式化XML文件,所以导入时就没有办法格式化导入数据。我想到两点,1.手工修改格式化XML文件,2.创造一个能生成格式化XML文件的中间对象...
数据库操作教程 2022-09-23 20:28:19 -
Sqlservertimestamp数据类使用介绍
在SQLServer中联机丛书是这样说的:SQLServertimestamp数据类型与时间和日期无关。SQLServertimestamp是二进制数字,它表明数据库中数据修改发生的相对顺序...
数据库操作教程 2022-09-23 20:28:11 -
数据库中identity字段不必是系统产生的唯一值性能优化方法(新招)
但是,具有identity特性的字段,不需要具有唯一性,更不必须是主键。可以通过,setidentity_inserttablename(on|off),在运行时控制,是否可以在identity字段中指定值,而不是由系统自动的插入值...
数据库操作教程 2022-09-23 20:26:18 -
sqlserverCase函数应用介绍
--简单Case函数CASEsex WHEN'1'THEN'男' WHEN'2'THEN'女'ELSE'其他'END--Case搜索函数CASEWHENsex='1'THEN'男' WHENsex='2'THEN'女'ELSE'其他'END这两种方式,可以实现相同的功能。简单Case函数的写法相对比较简洁,但是和Case搜索函数相比,功能方面会有些限制,比如写判断式...
数据库操作教程 2022-09-23 20:26:14 -
世界杯猜想活动的各类榜单的SQL语句小结
/*增幅降幅排名*/复制代码代码如下:Selecttop50UserName,sum(ReceivePrice)-sum(GuessPrice)asReceivePrice,cast(sum(CASEWHENReceivePrice>0THEN1.0ELSE0END)/count(ReceivePrice)*100asnumeric(4,1))asRateFrom[game_FantasyLog]WHEREIsJudge=1GROUPBYUserId,UserNameORDERBYsum(ReceivePrice)-sum(GuessPrice)ASC/*正确率错误率排名*/复制代码代码如下:Selecttop50UserName,sum(ReceivePrice)-sum(GuessPrice)asReceivePrice,cast(sum(CASEWHENReceivePrice>0THEN1...
数据库操作教程 2022-09-23 20:22:39