处理SQLServer表的数据插入到错误列中计算机等级考试

文章作者 100test 发表时间 2009:06:17 19:05:19
来源 100Test.Com百考试题网


  编辑特别推荐:

  全国计算机等级考试(等考)指定教材

  全国计算机等级考试学习视频

  全国计算机等级考试网上辅导招生

  全国计算机等级考试时间及科目预告

  百考试题教育全国计算机等级考试在线测试平台

  全国计算机等级考试资料下载

  全国计算机等级考试论坛

  计算机等级考试四级应用题解析汇总

  2009年下半年全国计算机三级考试报名时间从6月1日起已经开始报名。详情点击:2009年下半年全国计算机等级考试各地报名点汇总。2009年下半年全国计算机三级考试时间是2009年9月19日至23日。更多优质资料尽在百考试题论坛 百考试题在线题库

  为了描述这个问题,我将创建一个简单的表,并且插入两个带有如下显示的相同数据类型的列。
  CREATE TABLE SwapData(id int,value1 varchar(50),value2 varchar(50))
  GO
  现在这个表已经创建了,接下来我们在这个表中插入一些值。在这里,我使用一个UNION ALL语句,因此我就可以做一次INSERT,但是这也可以通过执行几个插入语句来完成。
  INSERT INTO Swapdata
  SELECT 1,10,100
  UNION ALL
  SELECT 2,20,200
  UNION ALL
  SELECT 3,30,300
  UNION ALL
  SELECT 4,40,400
  UNION ALL
  SELECT 5,50,500
  UNION ALL
  SELECT 6,60,600
  UNION ALL
  SELECT 7,70,700
  UNION ALL
  SELECT 8,80,800
  UNION ALL
  SELECT 9,90,900
  UNION ALL
  SELECT 10,11,110  
  正如下面的图像所示,这将在“value1”和“value2”中插入具有不同值的十行。 


  图一

  现在数据已经插入,我们可以看到较大的值应该在"value1"。因此现在我们需要交换“value1” 和“value2”中的值。
  这里有很多种方法来解决这个问题。正如在问题部分所讨论的,你可以删除这些数据然后再重新插入,或者你可以创建一个新的列然后把这些数据移过去,但是这里还有更简单的方法。
  其中一个间的方法显示如下,那就是创建一个临时的变量,这个变量允许你更新数据和交换列值。
  DECLARE @temp AS varchar(50)
  UPDATE swapdata SET @temp=value2,value2=value1,value1=@temp
  我们不是在这个表中创建一个临时列,而是通过声明一个临时变量来交换这两个列中的数据。上面的代码解释如下:
  首先创建一个临时变量。


相关文章


14种鼠标故障的解答四计算机等级考试
让你的鼠标更灵活计算机等级考试
浅析SQLServer复制的向后兼容性计算机等级考试
informix中简单数据导入导出命令sh程序计算机等级考试
处理SQLServer表的数据插入到错误列中计算机等级考试
处理SSIS2008中的变更数据捕获计算机等级考试
SQLServer2005中进行捕捉错误的两种方法计算机等级考试
使用SQLServer中COALESCE()函数的两种方法计算机等级考试
灵活设置WindowsServer2008应对系统管理谜局计算机等级考试
澳大利亚华人论坛
考好网
日本华人论坛
华人移民留学论坛
英国华人论坛