`
verge
  • 浏览: 13320 次
  • 性别: Icon_minigender_2
最近访客 更多访客>>
社区版块
存档分类
最新评论

SQL练手(SQL Server 2000)

阅读更多
不写sql好久,都有些陌生了,刚好朋友问我一个问题,就顺便写了这些

  • 取得表的结构属性
select * from information_schema.columns  where  table_name='authors';
  • 初级游标使用
要完成的一个小功能:将一个数据表的列变成行,将某一单行相应的列值放到其右边。具体效果为图片中所示。
说明:下面的存储过程在SQL Server 2000上成功运行,使用自带的pubs数据库authors表。
   
sql 代码
 
  1. create PROC sp_row_col @au_id varchar(50)  
  2. as        
  3.     /* 声明游标 */  
  4.     declare colCursor CURSOR for   
  5.     select column_name from information_schema.columns where table_name='authors'; /* 取得列名 */  
  6.       
  7.     declare @col varchar(50);  
  8.     declare @colValue varchar(100);  
  9.     declare @sqlStr varchar(200)  
  10.   
  11.     open colCursor;  /* 打开游标 */  
  12.     fetch next from colCursor into @col;  
  13.     while @@FETCH_STATUS=0  /* 系统变量@@FETCH_STATUS为0表示FETCH语句成功,-1:失败或此行不在结果集中,-2:被提取的行不存在. 注:不同的DBMS这里有所不同*/  
  14.     begin  
  15.         set @sqlStr = 'declare valCursor CURSOR for SELECT '+ @col + ' FROM authors where au_id='''+@au_id+''''; /* 用变量作select列名的解决办法,不知道还有没有更好一些的? */  
  16.         exec (@sqlStr);  
  17.           
  18.         open valCursor;  
  19.         fetch next from valCursor into @colValue;             
  20.         close valCursor /* 关闭游标 */  
  21.         deallocate valCursor /* 释放游标 */  
  22.           
  23.         insert into row_col values(@col, @colValue);  
  24.         fetch next from colCursor into @col;  
  25.     end  
  26.     close colCursor /* 关闭游标 */  
  27.     deallocate colCursor /* 释放游标 */   
  28. return  
  29.   
  30. go   
  31. use pubs;  
  32. create table row_col (column_name varchar(50), col_value varchar(50));  
  33. exec sp_row_col '172-32-1176' 
  34. select * from row_col;  
  35. select * from authors;
  36.  


ps: 写这些google了N多次,主要是原来都还没有用过游标,汗ing,还有就是解决如何在语句中嵌入变量这个问题。 开始慢慢地体会到自己知识的浅薄了。
  • 描述: 运行效果图
  • 大小: 14.1 KB
分享到:
评论

相关推荐

    sqlserver练手入门作业

    这个“sqlserver练手入门作业”是初学者掌握数据库操作的一个理想实践项目,特别是对于那些想要学习如何使用ado.net进行数据操作的人来说。 首先,让我们详细了解一下SQL Server中的数据操作基础: 1. **创建User...

    VS2017+SQl练手程序

    【VS2017+SQL练手程序】项目是一个典型的结合了Visual Studio 2017(VS2017)开发环境与SQL数据库技术的练习案例。在这样的项目中,开发者通常会学习如何利用C#语言进行后端逻辑处理,并通过SQL进行数据存储和查询。...

    SQL Server 2008管理员必备指南(超高清PDF)Part3

    《SQL Server 2008管理员必备指南》适合所有SQL Server用户参考,更是数据库管理员的必备指南。 编辑推荐 《SQL Server 2008管理员必备指南》教你全面掌握SQL Server 2008的必备指南!这本实用指南讲述了SQL Server ...

    SQL Server 2008管理员必备指南(超高清PDF)Part1

    《SQL Server 2008管理员必备指南》适合所有SQL Server用户参考,更是数据库管理员的必备指南。 编辑推荐 《SQL Server 2008管理员必备指南》教你全面掌握SQL Server 2008的必备指南!这本实用指南讲述了SQL Server ...

    SQL Server 2008管理员必备指南(超高清PDF)Part2

    《SQL Server 2008管理员必备指南》适合所有SQL Server用户参考,更是数据库管理员的必备指南。 编辑推荐 《SQL Server 2008管理员必备指南》教你全面掌握SQL Server 2008的必备指南!这本实用指南讲述了SQL Server ...

    SQL.Server.2008管理员必备指南.part2.rar(2/4)

     SQL Server专家的呕心力作,数据库管理员的实战宝典,全面、深入地剖析SQL Server2008新特性,结构独特,实例丰富,操作性强。 编辑本段 目录  第Ⅰ部分 SQL Server 2008管理基础  第1章 SQL Server 2008管理...

    Data.Mining.with.SQL.Server.2005

    ### 数据挖掘与SQL Server 2005 #### 核心知识点概述 1. **数据挖掘的概念** - 数据挖掘是一种从大量数据中提取出有用的信息、模式或趋势的过程。 - 它涉及多种技术,如统计分析、机器学习算法等。 2. **SQL ...

    asp+sqlserver2000网络书店系统.rar

    计算机毕业设计论文, 毕设论文,毕设练手好项目,ASP.NET 师电子化信息库的设计与实现 , 关注博客,持续更新系统项目,asp+sqlserver2000网络书店系统 这两年太卷了,毕设和毕业 答辩竞争激烈,越写越卷,没有...

    SQL.Server.2008管理员必备指南.part1.rar(1/4)

     SQL Server专家的呕心力作,数据库管理员的实战宝典,全面、深入地剖析SQL Server2008新特性,结构独特,实例丰富,操作性强。 编辑本段 目录  第Ⅰ部分 SQL Server 2008管理基础  第1章 SQL Server 2008管理...

    asp+sqlserver2000在线考试系统.rar

    总的来说,"asp+sqlserver2000在线考试系统"是一个综合性的学习资源,涵盖了Web开发、数据库管理和教育技术的多个方面,无论是对初学者还是有一定经验的开发者,都有很大的学习价值。通过研究这个项目,你可以了解到...

    SQL.Server.2008管理员必备指南.part4.rar(4/4)

     SQL Server专家的呕心力作,数据库管理员的实战宝典,全面、深入地剖析SQL Server2008新特性,结构独特,实例丰富,操作性强。 编辑本段 目录  第Ⅰ部分 SQL Server 2008管理基础  第1章 SQL Server 2008管理...

    SQL SERVER 2000课程设计的实践与思考 (1).pdf

    标题中提到的是“SQL SERVER 2000课程设计的实践与思考”,这里包含了几个关键词:SQL Server 2000、课程设计、实践和思考。从标题可知,本文将围绕SQL Server 2000这一数据库管理系统进行课程设计的探讨,并在实践...

    售后服务系统源码(asp.net+sqlserver).zip

    本系统采用ASP.NET技术栈,结合SQL Server数据库,构建了一个高效、稳定且易维护的售后服务平台。以下是对该系统的技术细节进行的详细解析。 首先,ASP.NET是微软推出的一种用于构建Web应用程序的框架,它在.NET ...

    asp+SQLServer网上书店系统设计.rar

    计算机毕业设计论文, 毕设论文,毕设练手好项目,ASP.NET 师电子化信息库的设计与实现 , 关注博客,持续更新系统项目,asp+SQLServer网上书店系统设计 这两年太卷了,毕设和毕业 答辩竞争激烈,越写越卷,没有...

    SQL.Server.2008管理员必备指南.part3.rar(3/4)

     SQL Server专家的呕心力作,数据库管理员的实战宝典,全面、深入地剖析SQL Server2008新特性,结构独特,实例丰富,操作性强。 编辑本段 目录  第Ⅰ部分 SQL Server 2008管理基础  第1章 SQL Server 2008管理...

    SQLServer2005SP3-KB955706-x86-CHS.part1.rar

    【适合场景】:相关项目设计中,皆可应用在项目开发、毕业设计、课程设计、期末/期中/大作业、工程实训、大创等学科竞赛比赛、初期项目立项、学习/练手等方面中 可借鉴此优质项目实现复刻,也可基于此项目来扩展开发...

    web 练手练手练手练手练手

    "web 练手练手练手练手练手"这个标题暗示了我们可能在处理一个关于Web开发的练习项目,可能是为了提升Web技术和Java编程技能。"Nora_web"作为压缩包的文件名,可能是项目的名字或者是某个Web应用的模块。 Web开发...

    超市信息管理系统 visual studio+SQL server

    【描述】:“大三练手成品,开发平台Visual studio 2005+SQL 2000” 这个项目是一个基于Visual Studio 2005和SQL Server 2000开发的超市信息管理系统,主要面向大学生的实践学习,用于提升对软件开发流程和技术应用...

Global site tag (gtag.js) - Google Analytics