
SQL SERVER
文章平均质量分 83
tourstar
SOFTWARE(中国) 121042753
群介绍:
SQL SERVER、MY SQL、ORACLE、ASP.NET(C#)、WINFORM、JAVA、WPF、WCF、IOS、C、安卓
欢迎各位朋友的加入,让我们共同打造中国软件!
展开
-
函数
create function MaxVal (@a int, @b int) returns int asbegin if(@a > @b) begin return @a; end return @b;endgoselect dbo.MaxVal(3,5);goprint dbo.MaxVal(3,7);godeclare @maxV int;set @maxV = dbo.MaxVal(12,dbo.MaxVal(7,9));print @maxV;go----创建存储过程,根据给定的学号,取得姓名原创 2010-11-11 08:31:00 · 347 阅读 · 0 评论 -
sql 行专列 列转行 普通行列转换
<br />主要应用case语句来解决行转列的问题<br />行转列问题主要分为两类<br />1)简单的行转列问题:<br />示例表:<br />id sid course result<br />1 2005001 语文 80.0<br />2 2005001 数学 90.0<br />3 2005001 英语 80.0<br />4 2005002 语文 56.0<br />5 2005002 数学 69.0<br原创 2010-11-18 08:02:00 · 526 阅读 · 0 评论 -
SQL中Case的使用方法
Case具有两种格式。简单Case函数和Case搜索函数。 --简单Case函数CASE sex WHEN'1'THEN'男'WHEN'2'THEN'女'ELSE'其他'END--Case搜索函数CASEWHEN sex = '1'THEN'男'WHEN sex = '2'THEN'女'ELSE'其他'END这两种方式,可以实现相同的功能。简单Case函数的写法相对比较简洁,但是和Case搜索函数相比,功能方面会有些限制,比如写判断式。 还有一个需要注意的问题,Case函数只返回第一个符原创 2010-11-18 08:06:00 · 612 阅读 · 0 评论 -
SQL Server游标应用实例
<br />在数据库开发过程中,当你检索的数据只是一条记录时,你所编写的事务语句代码往往使用SELECT INSERT 语句。但是我们常常会遇到这样情况,即从某一结果集中逐一地读取一条记录。那么如何解决这种问题呢?游标为我们提供了一种极为优秀的解决方案。 <br />1.1 游标和游标的优点<br /> 在数据库中,游标是一个十分重要的概念。游标提供了一种对从表中检索出的数据进行操作的灵活手段,就本质而言,游标实际上是一种能从包括多条数据记录的结果集中每次提取一条记录的机制。游标总是与一条T_SQL转载 2010-11-16 08:04:00 · 509 阅读 · 0 评论 -
存储过程 与 SQL Server语句大比拼
本文从多个角度阐述了SQL Server与存储过程的比较。 ①为什么要使用存储过程? 因为它比SQL语句执行快。 ②存储过程是什么? 把一堆SQL语句罗在一起,还可以根据条件执行不通SQL语句。 ③来一个最简单的存储过程: CREATE PROCEDURE dbo.testProcedure_AXASselect userID from USERS order by userid desc注:dbo.testProcedure_AX是你创建的存储过程名,可以改为:AXzhz等,别跟关键字冲突就行转载 2010-11-16 08:01:00 · 463 阅读 · 0 评论 -
【转帖】with rollup和with cube的区别
--创建测试表use testcreate table test(id int,sort char(10),color char(10),num int constraint pk_test primary key(id,sort,color))--插入数据insert into testselect 1,'book','blue',10union allselect 1,'book','green',10union allselect原创 2010-11-15 08:32:00 · 1107 阅读 · 0 评论 -
SQL中使用WITH AS提高性能-使用公用表表达式(CTE)简化嵌套SQL
<br />一.WITH AS的含义 <br /> WITH AS短语,也叫做子查询部分(subquery factoring),可以让你做很多事情,定义一个SQL片断,该SQL片断会被整个SQL语句所用到。有的时候,是为了让SQL语句的可读性更高些,也有可能是在UNION ALL的不同部分,作为提供数据的部分。 <br />特别对于UNION ALL比较有用。因为UNION ALL的每个部分可能相同,但是如果每个部分都去执行一遍的话,则成本太高,所以可以使用WITH AS短语,则只要执行一遍即可。如转载 2010-11-15 08:27:00 · 314 阅读 · 0 评论 -
在SQL Server 2005中使用Try…Catch块进行T-SQL错误处理
<br />错误和异常处理对于所有好的编程规范都是至关重要的。现在使用SQL Server 2005提供的Try…Catch块,你可以实现更好的错误处理……<br /> 【IT专家网独家】SQL Server的错误处理或异常处理一直都是T-SQL开发中比较麻烦的部分。在过去,每一条语句运行后,你都要手动地进行错误检查,然后逐个错误的进行处理。SQL Server事务管理同样非常麻烦,你需要找出事务的状态,然后恰当的将其回滚或者提交。<br /> 而今,通过在SQL Server 2005中为T-SQL添转载 2010-11-14 22:30:00 · 632 阅读 · 0 评论 -
SQL语句练习题
练习题目 1、 查询Student表中的所有记录的Sname、Ssex和Class列。2、 查询教师所有的单位即不重复的Depart列。3、 查询Student表的所有记录。4、 查询Score表中成绩在60到80之间的所有记录。5、 查询Score表中成绩为85,86或88的记录。6、 查询Student表中“95031”班或性别为“女”的同学记录。7、 以Class降序查询Student表的所有记录。8、 以Cno升序、Degree降序查询Score表的所有记录。9、 查询“95031”班的学生人数。1原创 2010-11-11 08:22:00 · 2653 阅读 · 0 评论 -
事务演示--游标
---事务演示create database TRANS_DEMO;gouse TRANS_DEMO;go--银行账户表create table BANK_ACCOUNTS( ACCOUNT_NUM nvarchar(20) not null constraint PK_BANK_ACCOUNTS primary key, --帐号(主键) CUSTOMER_NAME nvarchar(20) not null, --客户姓名 BALANCE float not null原创 2010-11-11 08:35:00 · 430 阅读 · 0 评论 -
sql 左连接,右连接,内外连接 的一些 基础 区别
<br />假设有A,B两个表。 表A记录如下: <br />aID aNum <br />1 a20050111 <br />2 a20050112<br />3 a20050113 <br />4 a20050114 <br />5 a20050115 <br />表B记录如下: <br />bID bName <br />12006032401<br />22006032402<br />32006032403<br />42006032404<br />82006032408<br /><br />转载 2010-11-11 08:30:00 · 475 阅读 · 0 评论 -
批处理
print '批处理开始...';select * from TB_STUDENTS;select * from TB_MAJORS;print '批处理结束';goselect * from tb_students;print '定义变量的批处理例子';declare @name nvarchar(20);declare @birthdate datetime;select @name=STU_NAME, @birthdate=stu_birth_date from TB_STUDENTS where s原创 2010-11-11 08:29:00 · 405 阅读 · 0 评论 -
在D盘创建数据表
<br />--在D盘创建学生表<br />CREATE DATABASE DB_STUDENTS<br />ON<br />(NAME='STUDENT_1_MDF',FILENAME='D:/DB_STUDENTS/DB_STUDENTS_1_1.MDF',SIZE=5MB,FILEGROWTH=50%,MAXSIZE=2GB),<br />FILEGROUP DB_STUDENTS_NDF<br />(NAME='STUDENT_1_NDF',FILENAME='D:/DB_STUDENTS/DB_S原创 2010-11-11 08:19:00 · 1122 阅读 · 0 评论 -
触发器
use demo_2;go--最简单的触发器,当向TB_Students表插入数据的时候,报告插入的记录create trigger TG_STUDENTS_INSERT on TB_Students for insert asbegindeclare @stuId varchar(10);declare @stuName nvarchar(20);declare insertCursor cursor for select STU_ID,STU_NAME from inserted;open inse原创 2010-11-11 08:35:00 · 463 阅读 · 0 评论 -
动态级联菜单
<br /><html><br /><head><br /><title>css菜单显示效果</title><br /><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><br /><script type="text/javascript"><br />/**<br />*菜单的构造,需要绑定到onload<br />*/<br />startList = function() {<br /> if (docum转载 2010-11-22 10:17:00 · 599 阅读 · 0 评论